Ich möchte eine versteckte Schaltfläche zeigen, wenn Benutzer irgendein Wort auf Edittext setzen. im Versuch bereits diese Methode:set button Sichtbar/unsichtbar in Textwatcher in android
((Button)findViewById(R.id.btnClear)).setVisibility(View.VISIBLE);
dies ist mein Code in TextWatcher:
final EditText txtSearch = (EditText)findViewById(R.id.txtSearch);
txtSearch.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
((Button)findViewById(R.id.btnClear)).setVisibility(View.VISIBLE);
CategoryCustomAdapter adapter2 =
new CategoryCustomAdapter(showCategoryListActivity.this,
DatabaseHelper.getCategories(
showCategoryListActivity.this,s.toString()));
((ListView)findViewById(R.id.lstCategorylist)).setAdapter(adapter2);
}
@Override
public void afterTextChanged(Editable s) {
}
});
alles, was Arbeit in Ordnung, außer dieser Linie:
((Button)findViewById(R.id.btnClear)).setVisibility(View.VISIBLE);
ich bin sicher, dass Sie helfen können ich raus. PS: API 19 Nexus 4 Android 4.4.2
können Sie Ihre Taste, bevor zuweisen? Persönlich werde ich den Code in AfterTextChanged setzen. Dann kannst du btnClear.setvisibility setzen (count> 0? VISIBLE: GONE); – JCDecary
Ich fürchte, das ist nicht die Lösung. aber ich habe alles getan, was du gesagt hast, und nichts ist passiert. (erzwinge das Schließen am Anfang) –
Kannst du die Logcat-Logs hier posten, wenn du eine Macht nahesteht? Wie können Sie sagen, alles funktioniert gut außer dieser Linie? Der einzige Grund, den ich denke, ist, dass Sie mit Ihrem "R.id.btnClear" Namen falsch sind. –