如何找到微调器本身的视图ID?

时间:2012-02-24 02:02:20

标签: android android-adapterview

首次点击后,我想为微调器实现一个onclicklistener。

findViewById(R.id.spinner01)将返回一个AdapterView,您无法使用它实现onClickListener。

有没有办法可以确定在显示AdapterView之前在布局中显示的实际按钮样式灰色实例的视图ID(如非AdapterView ID)?

2 个答案:

答案 0 :(得分:0)

试试这个

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
            }   
    }

} 

答案 1 :(得分:0)

如果您在XML中引用Spinner的android:id,则findViewById获得的视图实际上会返回一个Spinner对象。对于首次单击时,只需为微调器提供onClickListener,如vipin或匿名侦听器所示。

Spinner spinner = (Spinner) findViewById(R.id.YOUR_SPINNER_ID);
spinner.setOnClickListener(new OnClickListener() );

并在onClickListener中实现onClick函数(应该由Eclipse自动生成。