我有一个按钮(SET按钮),并立即在按下按钮,我希望我的修改AutoCompleteTextView显示在下拉菜单中AutoCompleteTextView不显示下拉
我有两个类
AutoCompleteTextViewTest1Activity.class
package com.autocompletetextviewtest1;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
public class AutoCompleteTextViewTest1Activity extends Activity {
ArrayAdapter<String> adapter1;
ArrayAdapter<String> adapter2;
private InstantAutoComplete actv;
private String[] countries2 ={"Taiwan", "China", "S. Korea", "USA", "Japan", "Russia"};
private String[] countries={};
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
adapter1 = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, countries);
adapter2 = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, countries2);
actv = (InstantAutoComplete)findViewById(R.id.actv);
actv.setAdapter(adapter1);
Button setButton = (Button)findViewById(R.id.setButton);
Button clearButton = (Button)findViewById(R.id.clearButton);
setButton.setOnClickListener(new OnClickListener(){
public void onClick(View v){
actv.setAdapter(adapter2);
actv.requestFocus();
}
});
clearButton.setOnClickListener(new OnClickListener(){
public void onClick(View v){
actv.setAdapter(adapter1);
}
});
}
}
而且
InstantAutoComplete.class
package com.autocompletetextviewtest1;
import android.content.Context;
import android.graphics.Rect;
import android.util.AttributeSet;
import android.widget.AutoCompleteTextView;
public class InstantAutoComplete extends AutoCompleteTextView {
public InstantAutoComplete(Context context) {
super(context);
}
public InstantAutoComplete(Context arg0, AttributeSet arg1) {
super(arg0, arg1);
}
public InstantAutoComplete(Context arg0, AttributeSet arg1, int arg2) {
super(arg0, arg1, arg2);
}
@Override
public boolean enoughToFilter() {
return true;
}
@Override
protected void onFocusChanged(boolean focused, int direction,
Rect previouslyFocusedRect) {
super.onFocusChanged(focused, direction, previouslyFocusedRect);
if (focused) {
performFiltering(getText(), 0);
showDropDown();
}
}
}
但我的AutoCompleteTextView不显示按下setButton的下拉菜单。我能做什么?谢谢!
我做类似的东西在这里选择一个项目! http://stackoverflow.com/questions/12854336/autocompletetextview-backed-by-cursorloader – toobsco42 2012-10-29 20:03:02