Android - 将动态数据传递给onClick

时间:2015-03-18 01:07:24

标签: android

这听起来像其他问题,但实际上有点不同。所以我的情况是,我有六个按钮,用户可以点击其中任何一个=>但我想跟踪单击按钮的ORDER。所以这就是我做的。我在SQLite中保存了一条记录并使用了日期,我可以确定按钮被点击的顺序。还有另一种方法吗?

public class ButtonClickListener implements OnClickListener {

    @Override
    public void onClick(View v) {
       // I want to be able to pass data in this method.
       try {    
           v.setVisibility(View.INVISIBLE);
       } catch (Exception ex) {
       }
       saveClickDAO(); // has Date field to sort later
    }

有没有办法将数据实际传递给此onClick事件?我知道我可以在这里使用参数向构造函数添加数据,但这将是静态的数据。

1 个答案:

答案 0 :(得分:1)

View v中有onClick(View v),因此您可以使用View上的数据。 v.getId()v.getTag()会为您提供一些与视图相关的数据。

  • v.getId()将为您提供在布局xml中设置的android:id,例如R.id.some_btn

  • v.getTag()会为您提供使用v.setTag(Object o)设置的对象。