一旦第一次单击微调器,我想为它实现一个 onclicklistener。
findViewById(R.id.spinner01) 将返回一个 AdapterView,您无法使用它实现 onClickListener。
有没有一种方法可以确定在显示 AdapterView 之前显示在布局中的实际按钮样式灰色实例的 View ID(如非 AdapterView ID)?
一旦第一次单击微调器,我想为它实现一个 onclicklistener。
findViewById(R.id.spinner01) 将返回一个 AdapterView,您无法使用它实现 onClickListener。
有没有一种方法可以确定在显示 AdapterView 之前显示在布局中的实际按钮样式灰色实例的 View ID(如非 AdapterView ID)?
如果您在 XML 中引用 Spinner 的 android:id,则使用 findViewById 获得的视图实际上会返回一个 Spinner 对象。因为当它第一次被点击时,只需给微调器一个 onClickListener,如 vipin 或匿名监听器所示。
Spinner spinner = (Spinner) findViewById(R.id.YOUR_SPINNER_ID);
spinner.setOnClickListener(new OnClickListener() );
并在 onClickListener 中实现 onClick 函数(应该是 Eclipse 自动为你生成的。
尝试这个
public class yourActivity extends Activity implements OnClickListener
{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(RESOURCE_ID);
Spinner spin = (Spinner)findViewById(R.id.spinner_id);
spin.setOnClickListener(this);
}
public void onClick(View arg0) {
if(arg0.getId()==R.id.spinner_id)//arg0.getId() will return you id of spinner {
//your code
}
}
}