【发布时间】:2019-05-17 14:57:33
【问题描述】:
我有我的 RecyclerView 和 EditText 用于搜索填充来自 Firebase 数据库的数据的匹配项。当我自己在EditText 中输入一些单词时,一切正常,但如果我尝试使用intent 单词从另一个活动搜索到此EditText,则没有任何效果。之后要使搜索工作,我需要更改意图单词中的一些字母。
这是我在 OnCreate 中的代码:
if(getIntent().getExtras() != null) {
Intent intent = getIntent();
String str = intent.getStringExtra("trickname");
editSearch.setText(str);
}
editSearch.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) {
}
@Override
public void afterTextChanged(Editable s) {
search(s.toString());
}
});
及搜索方法:
private void search(String str){
ArrayList<Trick> myList = new ArrayList<>();
for(Trick object : list){
if((object.getDescription().toLowerCase().contains(str.toLowerCase().trim())) || (object.getName().toLowerCase().contains(str.toLowerCase().trim()))){
myList.add(object);
}
}
AdapterClass adapterClass = new AdapterClass(myList);
recyclerView.setAdapter(adapterClass);
}
来自另一个活动的意图:
Intent intent1 = new Intent(ProgressActivity.this, EncyActivity.class);
intent1.putExtra("trickname", button1.getText().toString());
startActivity(intent1);
EditText 中的字是有意的,但搜索不起作用。如果我自己输入这个词,搜索正在工作并找到匹配项
【问题讨论】:
标签: java android search android-intent