我有自动完成的textview并提供了一些建议。但我想在用户点击按钮时更改建议数据。 这是我的代码
public class MainActivity extends Activity {
ArrayAdapter adapter;
AutoCompleteTextView view;
Button btn; ArrayList<String>data;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
view=(AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
btn=(Button)findViewById(R.id.button1);
data=new ArrayList<String>();
for(int i=0;i<100;i++)
{
data.add("Autocomplete"+i);
}
adapter = new ArrayAdapter
(this,android.R.layout.simple_list_item_1,data);
view.setAdapter(adapter);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
data.clear();
Toast.makeText(getApplicationContext(), "Data size"+data.size(), Toast.LENGTH_LONG).show();
for(int i=0;i<100;i++)
{
data.add("NewData"+i);
}
adapter.notifyDataSetChanged(); Toast.makeText(getApplicationContext(), "Data size= "+data.size(), Toast.LENGTH_LONG).show();
}
});
}
它不起作用。以前的数据显示。我现在能做什么?
答案 0 :(得分:0)
如果有人遇到AutoCompleteTextView的这个问题,notifiydatasetchaged()将无效。
您必须更新列表数据并再次设置适配器。
'adapter_email =new AutoSuggestAdapter(this,R.layout.spinner_autofill_av_dialouge,Merged);
av_email.setAdapter(adapter_email);'
使用上述两行而不只是.setAdapter
。