我有一个烦人的问题。
我的应用程序有两个活动(选项卡)Activity1:listview,Activity2:editText+listview。
应用程序从Tab1(Activity1)开始。当我打开第二个活动(带有EditText),无论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"
>
这里有来自Activity2的两个重写方法
@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);
}
你有什么想法,这种情况下XML代码和活动代码应该长什么样子?