在Android短视频源码开发中切换自定义输入法的实现

2021-06-25 18:07:29 浏览数 (1)

在Android短视频源码开发过程中,如果对本地默认的输入法不满意,其实可以实现切换自定义输入法,通过这样的方式提升用户的体验,其实具体实现的方法很简单,用好InputMethodManager即可。

先贴核心代码:

MainActivity.java

代码语言:javascript复制
package com.example.leidong.imechange;
 
import android.content.Context;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.inputmethod.InputMethodInfo;
import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
 
import java.util.List;
 
public class MainActivity extends AppCompatActivity {
    private TextView textView;
    private EditText editText;
    private Button button;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        init();
 
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                //拿到输入法的全部条目
                List<InputMethodInfo> list = imm.getInputMethodList();
                //textView中显示输入法的全部条目
                textView.setText(list.toString());
                //输入法选择框
                imm.showInputMethodPicker();
            }
        });
    }
 
    private void init() {
        textView = (TextView)findViewById(R.id.textView);
        editText = (EditText)findViewById(R.id.editText);
        button = (Button)findViewById(R.id.button);
    }
}

这其中按钮点击的那四行代码是关键,实现了显示Android中短视频源码开发输入法和显示输入法切换选择对话框这两个功能。

activity_main.xml

代码语言:javascript复制
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@ id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.leidong.imechange.MainActivity">
 
    <Button
        android:text="CHANGE IME"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@ id/button"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="13dp" />
 
    <TextView
        android:text="TextView"
        android:textSize="20dip"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="17dp"
        android:layout_marginTop="44dp"
        android:id="@ id/textView"
        android:layout_alignParentTop="true"
        android:layout_alignParentStart="true" />
 
    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="textPersonName"
        android:text="Name"
        android:ems="10"
        android:layout_alignParentTop="true"
        android:layout_alignParentStart="true"
        android:id="@ id/editText" />
</RelativeLayout>

AndroidManifest.xml不需要做任何修改,就是新建工程时的就OK。 以上就是“在Android短视频源码开发中切换自定义输入法的实现”的全部内容,希望对大家有帮助。

0 人点赞