Я создаю приложение, для которого важно, чтобы ни один из EditText-Views не фокусировался. Это должно произойти только тогда, когда пользователь указывает прямо на один из них. Мне удалось предотвратить фокус-прирост onCreate() и onResume() через Dummy EditText-Item. Но в моем приложении я использую вкладки в сочетании с scrollviews. Когда пользователь впервые переходит на другую вкладку, кажется, что нет фокуса (совершенный!), Но как только один возвращается к другой вкладке, мой EditText-View получает фокус...
Я попытался использовать die onXY события tabHost, но на самом деле не понял это правильно... Я ценю любую помощь! Спасибо заранее, fbtb Этот код работает только с первой вкладкой... как это может быть? Тост всегда показан правильно, но фокус установлен только на первом Tabchange... я не получаю его вообще :(
tabHost.setOnTabChangedListener(new OnTabChangeListener() {
@Override
public void onTabChanged(String bezeichner) {
Toast.makeText(getBaseContext(),"This is the Tab: " + tabHost.getCurrentTab() +" der String: "+bezeichner, Toast.LENGTH_LONG).show();
if (tabHost.getCurrentTab() == 0)
goBtn.requestFocus();
if (tabHost.getCurrentTab() == 1)
label_maxvolume.requestFocus();
}
});
Используйте это, чтобы удалить фокус из любого Edittext
final EditText eText = (EditText) findViewById(R.id.searchbox);
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(eText.getWindowToken(), 0);
Это будет скрыть клавиатуру всякий раз, когда вы захотите, или где бы вы ни скрывались.