嗨,我是android.what的新手,我正在使用编辑文本实现搜索 把代码写成休耕。
((EditText)findViewById(R.id.EditText01)).setOnKeyListener(new OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
if(event.getAction() == KeyEvent.ACTION_UP){
String enteredText = ((EditText)findViewById(R.id.EditText01)).getText().toString();
if(enteredText.length() > 0 ) {
String str1 =""+ enteredText.charAt(0);
str1 = str1.toUpperCase();
String str2 =""+ enteredText.substring(1);
str2 = str2.toLowerCase();
enteredText = str1 + str2;
}
id=0;
Iterator<String> strIt = strList.iterator();
Log.v("", "Total items in the list****"+strList);
((LinearLayout)findViewById(R.id.LinearLayout02)).removeAllViewsInLayout();
if(strIt.next().startsWith(enteredText))
{
Log.v("", "hi u r enterd letter is there in list");
}
else
{
((LinearLayout)findViewById(R.id.LinearLayout02)).removeAllViewsInLayout();
Toast.makeText(MyShoppingList.this, "There is no item In the List Start with Letter "+enteredText+" Click Add Item to Add New Item" ,06 ).show();
Log.v("", " u enterd letter is no there in list"+enteredText);
additem();
}
count = 0;
while(strIt.hasNext()){
String str = strIt.next();
if(str.startsWith(enteredText)){
//count++;
matchingLetters(str);
}
}
}
return false; }
});
它工作正常,但是当active.it doee中的设备键盘在激活键盘时实现,同时最小化键盘代码然后只运行时,我遇到问题。什么问题我无法理解请帮助我。发布一些代码或链接。谢谢你提前。
答案 0 :(得分:1)
请注意: onKey()返回一个布尔值来指示您是否已经消耗了该事件,并且不应该进一步携带它。也就是说,返回true表示你已经处理了这个事件,它应该在这里停止;如果您没有处理它并且/或事件应继续到任何其他on-key侦听器,则返回false。 http://developer.android.com/reference/android/view/View.OnKeyListener.html#onKey(android.view.View,int,android.view.KeyEvent)
因此,在我看来,你必须回归真实&amp;然后将结果发回到StackOverflow。