【问题标题】:Is there attribute like android:onClick for spinner?微调器是否有像 android:onClick 这样的属性?
【发布时间】:2018-05-08 17:23:47
【问题描述】:

当我在微调器中选择任何项目(如 Button 属性 android:onClick 或其他内容)时,我想找到任何方法来运行方法。

【问题讨论】:

  • 是的,有!它的onItemSelected!请在谷歌搜索这里是文档的推荐链接developer.android.com/reference/android/widget/Spinner.html
  • spinner like Button 请详细说明。使用onItemSelected
  • @IntelliJAmiya,你的意思是我可以在微调标签中使用 android:onItemSelected ?

标签: android xml android-studio onclick spinner


【解决方案1】:

您可以使用DataBinding 并关注此帖子Custom XML attribute on android databinding

或者最简单的方法是在您的Activity 上实现OnItemSelectedListener

为您的微调器设置监听器:

spinner.setOnItemSelectedListener(this);

覆盖onItemSelected() 方法:

public void onItemSelected(AdapterView<?> parent, View view, int pos,long id) {
    Toast.makeText(parent.getContext(), 
        "OnItemSelectedListener : " + parent.getItemAtPosition(pos).toString(),
        Toast.LENGTH_SHORT).show();
}

参考:How can I use onItemSelected in Android?

【讨论】:

  • 当我输入 android:onItemSelectedListener 时显示“未知属性 android:onItemSelectedListener”,我该怎么办?
  • 您可以在Activity 上实现OnItemSelectedListener,而不是android:onItemSelectedListener,这是迄今为止最简单和最干净的方法。
【解决方案2】:

你需要实现 OnItemSelectedListener

YourClass implements AdapterView.OnItemSelectedListener

然后在onCreate中

spinner.setOnItemSelectedListener(this)

和被覆盖的方法

@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {}

其中位置是您从微调器中选择的项目的位置。希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 2010-10-09
    • 2013-12-15
    • 2021-10-31
    • 2019-03-26
    • 2017-04-03
    • 1970-01-01
    • 2011-07-03
    • 2015-09-09
    相关资源
    最近更新 更多