我在一个片段中创建了一个警报对话框,并在警报对话框中添加了一个微调框。我非常确定,除了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参数,而您已经第三次添加。
让我知道是否有帮助。