在spinner上应用时遇到performClick()方法的问题,但只在android 4.0.1及更高版本上有问题。它在2.3版本上运行得很好。
在我的下面的代码中,我使用setOnItemSelectedListener而不是setOnClickListener,但无论如何它都适用于2.3版本。
非常感谢您的帮助。
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
//do something
}
public void onNothingSelected(AdapterView<?> arg0) {
}
});
spinner.performClick();
答案 0 :(得分:0)
您可能不需要performClick()
。在您的活动课程中,请尝试以下操作:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
… // other code
setupSpinner();
}
private void setupSpinner();
Spinner mySpinner = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.spinner_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mySpinner.setAdapter(adapter);
mySpinner.setOnItemSelectedListener(this);
}
@Override
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
//do your thing
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
//do your thing
}