EditText - 键盘没有出现在焦点上

prz*_*bar 3 android android-layout android-softkeyboard android-edittext

我有这个烦人的问题。我的应用程序有 2 个活动(选项卡)Activity1:listview、Activity2:editText+listview。应用程序从 Tab1(Activity1) 开始。当我打开第二个活动(使用编辑文本)时,无论是否选择了 EditText(可编程),当我点击 EditText 时,什么都没有发生(应该出现软键盘)。唯一的解决方案是更改活动(单击 Tab1 小部件)并返回活动 2 - 在此选项卡交换后,键盘工作正常。

带有 edittext 的 XML 布局的一部分:

    <EditText
    android:hint="Wyszukaj..."
    android:id="@+id/editText1"
    android:layout_width="match_parent"
    android:layout_height="45dp"
    android:inputType="textAutoComplete|text"
    android:singleLine="true" 
    android:focusable="true"
    android:focusableInTouchMode="true"
>
Run Code Online (Sandbox Code Playgroud)

这是来自 Activity2 的 2 个覆盖方法

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.tab2);

    this.db = DataBase.getInstance();
    this.ds = DataSource.getInstance();
    this.prepareListView();
}

@Override
protected void onResume() {
    super.onResume();
    this.doubleBackToExitPressedOnce = false;
}
private void prepareListView() {
    sbal = this.db.getAllStops();
    adapter = new StopListAdapter(this, sbal);

    lv = (ListView) findViewById(R.id.tab2list);
    lv.setAdapter(adapter);
    lv.setOnItemClickListener(onClick);
    EditText et = (EditText) findViewById(R.id.editText1);
    et.addTextChangedListener(changeWatcher);
    registerForContextMenu(lv);
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,您有什么想法,XMLcode 和活动代码应该是什么样的?

小智 5

看到这个答案。它为我解决了同样的问题:

当我在 android 中单击 edittextview 时未显示键盘?

并尝试此代码

mEditText.clearFocus();
Run Code Online (Sandbox Code Playgroud)