我在一个片段中创建了一个警报对话框,并在警报对话框中添加了一个微调框。我非常确定,除了onSelectedItem以外,其他都运行良好,因为ArrayList中的项目正在显示。当我在onItemSelected内logd时,日志猫未显示我的日志,我认为它永远不会输入onItemSelected。


        ArrayAdapter<Customer> adapter = new ArrayAdapter(getContext(), android.R.layout.simple_spinner_item, customers);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spinner.setAdapter(adapter);
        spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                Log.d("spinner", "onItemSelected: fetching");
                Customer customer = (Customer)parent.getItemAtPosition(position);
                Toast.makeText(getActivity(),customer.getNamaKedai()+" selected", Toast.LENGTH_LONG).show();
            }

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

            }
        });

最佳答案

ArrayAdapter<Customer> adapter = new ArrayAdapter(getContext(), customers,android.R.layout.simple_spinner_item);


我在这行代码中做了一些小的更改。根据语法,您应该第二次添加customers参数,而您已经第三次添加。

让我知道是否有帮助。

10-07 19:31
查看更多