emSelectedListener添加到

emSelectedListener添加到

我有一个按钮和一个微调器(最初隐藏)。当用户按下按钮时,微调器将填充项目并变为可见。现在,我想将onemselectedlistener添加到微调器。我试过很多教程都不走运。
这是我的oncreate函数

public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Button load_routes = (Button)findViewById(R.id.load_routes);
    Spinner routes = (Spinner)findViewById(R.id.routes_list);

    load_routes.setOnClickListener(new View.OnClickListener()
    {
        public void onClick(View v)
        {
            load_routes(v);
        }
    });

    routes.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
    {
        public void onItemSelected(AdapterView<?> arg0, View v, int position, long id)
        {
            Log.v("routes", "route selected");
        }

        public void onNothingSelected(AdapterView<?> arg0)
        {
            Log.v("routes", "nothing selected");
        }
    });
}

这是我的加载路径功能
private void load_routes(View v)
{
    Spinner routes = (Spinner)findViewById(R.id.routes_list);
    List<String> routes_list = RouteParser.get_routes();
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, routes_list);
    routes.setAdapter(adapter);

    TableRow list_of_routes_row = (TableRow)findViewById(R.id.list_of_routes_row);
    list_of_routes_row.setVisibility(View.VISIBLE);
}

这个设置不起作用。唯一的办法是当我设置我的侦听器为routes.setOnItemSelectedListener(this)时,我实现OnItemSelectedListener并包含必要的函数。但我有多个微调器,需要为不同的微调器创建单独的侦听器。任何帮助都将不胜感激。谢谢!

最佳答案

将微调器声明为字段,一旦完成findviewbyid并在任何需要的地方使用它,就实例化侦听器。

07-28 02:20