我在android spinner中有一长串数据显示。所以我想为这个微调器添加一个搜索选项?任何人都可以用一个简单的示例代码帮助我。(我看到了一些关于此的答案,但它们还不够)..
我是Android新手,我知道这不是正确的方法。但我想在旋转器中添加这种选项。当您点击搜索框中的字母时,项目列表将显示在与该字母相关的微调器中。非常感谢。
public void search(查看视图){
cursor = db.rawQuery("SELECT * FROM tblRepTeritories WHERE RepCode like?",
new String[]{"%" + searchText.getText().toString() + "%"});
SimpleCursorAdapter adapter1 = new SimpleCursorAdapter(
this,
android.R.layout.simple_spinner_item,
cursor,
new String[] {"TeriCode"},
new int[] {android.R.id.text1});
adapter1.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item );
// get reference to our spinner
Spinner s1 = (Spinner) findViewById( R.id.spinner2 );
s1.setAdapter(adapter1);
}
答案 0 :(得分:1)
使用TextWatcher
,然后在适配器上调用notifyDataSetChanged()
:
searchText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void afterTextChanged(Editable s) {
cursor = db.rawQuery("SELECT * FROM tblRepTeritories WHERE RepCode like?",
new String[] {"%" + searchText.getText().toString() + "%"});
adapter1.notifyDataSetChanged();
}
});