对话框中的 OnItemSelectedListener
Posted
技术标签:
【中文标题】对话框中的 OnItemSelectedListener【英文标题】:OnItemSelectedListener in Dialog 【发布时间】:2019-07-28 08:56:29 【问题描述】:我在对话框中有一个微调器,我试图从微调器中的选定项目中获取值并将其传递给字符串变量。我发现的方法是 spinner.setOnItemSelectedListener()。
但是,此方法需要在对话框之外设置另一种方法。下面附上代码。
这是对话框的代码
private void recordDialog()
LayoutInflater inflater = LayoutInflater.from(MainActivity.this);
View subView = inflater.inflate(R.layout.record, null);
//get current date
Calendar calendar = Calendar.getInstance();
String pattern = "dd-MMM-yy";
DateFormat dateFormat = new SimpleDateFormat(pattern);
final String currentDate = dateFormat.format(calendar.getTime());
//get category
final Spinner spinner = subView.findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.category, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(this);
...
final AlertDialog alertDialog = builder.create();
alertDialog.show();
以及对话框外的部分
public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
String selectedCategory = parent.getItemAtPosition(position).toString();
是否有完成对话框中的所有内容?
【问题讨论】:
感谢您告诉我。欣赏它 【参考方案1】:你可以在你的recordDialog
函数中实现onItemSelectedListener
:
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id)
// Do your stuff here
public void onNothingSelected(AdapterView<?> parent)
// Do your stuff here
);
【讨论】:
以上是关于对话框中的 OnItemSelectedListener的主要内容,如果未能解决你的问题,请参考以下文章