Java 未在微调器中调用onItemSelected

Java 未在微调器中调用onItemSelected,java,android,spinner,Java,Android,Spinner,我试图在我的应用程序中实现一个微调器。所有内容都正确显示,微调器也成功地填充了项目 我的问题是: 当我选择一个项目时,什么也不会发生 以下是我在onCreate中的代码: Spinner spinner; ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, eventTitles); arrayAdapter.

我试图在我的应用程序中实现一个微调器。所有内容都正确显示,微调器也成功地填充了项目

我的问题是: 当我选择一个项目时,什么也不会发生

以下是我在onCreate中的代码:

Spinner spinner;

ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, eventTitles);
        arrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spinner = (Spinner)findViewById(R.id.spinner);
        spinner.setAdapter(arrayAdapter);
        spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {

            Log.d("Spinner",adapterView.getItemAtPosition(i).toString());
                Toast.makeText(AdminActivity.this, "Hello Toast", Toast.LENGTH_SHORT).show();

            }

            @Override
            public void onNothingSelected(AdapterView<?> adapterView) {

                Log.d("Spinner","Nothing selected!");

            }
        });
微调器微调器;
ArrayAdapter ArrayAdapter=新的ArrayAdapter(这是android.R.layout.simple\u微调器\u项,eventTitles);
arrayAdapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
微调器=(微调器)findViewById(R.id.spinner);
spinner.setAdapter(阵列适配器);
spinner.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView AdapterView、View视图、int i、long l){
Log.d(“微调器”,adapterView.getItemAtPosition(i.toString());
Toast.makeText(AdminActivity.this,“Hello Toast”,Toast.LENGTH_SHORT.show();
}
@凌驾
未选择公共无效(AdapterView AdapterView){
Log.d(“微调器”,“未选择任何内容!”);
}
});
有什么建议吗

谢谢!
Alex

您已经在适配器中再次定义了微调器的布局。这不是必需的,请使用OnItemSelectedListener而不是AdapterView.OnItemSelectedListener

试试这个

 Spinner spinner;

    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, eventTitles);
            spinner = (Spinner)findViewById(R.id.spinner);
            spinner.setAdapter(arrayAdapter);
            spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
                @Override
                public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {

                Log.d("Spinner",adapterView.getItemAtPosition(i).toString());
                    Toast.makeText(AdminActivity.this, "Hello Toast", Toast.LENGTH_SHORT).show();

                }

                @Override
                public void onNothingSelected(AdapterView<?> adapterView) {

                    Log.d("Spinner","Nothing selected!");

                }
            });
微调器微调器;
ArrayAdapter ArrayAdapter=新的ArrayAdapter(这是android.R.layout.simple\u微调器\u项,eventTitles);
微调器=(微调器)findViewById(R.id.spinner);
spinner.setAdapter(阵列适配器);
spinner.setOnItemSelectedListener(新的OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView AdapterView、View视图、int i、long l){
Log.d(“微调器”,adapterView.getItemAtPosition(i.toString());
Toast.makeText(AdminActivity.this,“Hello Toast”,Toast.LENGTH_SHORT.show();
}
@凌驾
未选择公共无效(AdapterView AdapterView){
Log.d(“微调器”,“未选择任何内容!”);
}
});

如文档所示,
微调器不支持项目单击事件。要对用户单击做出反应,请调用
ArrayAdapter
对象的
setOnItemClickListener

我在异步任务中弄糟了一些东西。现在它工作了!谢谢大家的回答。

在微调器上设置
下拉视图资源
,而不是适配器。