在API级别16上创建/生成R.id

时间:2016-08-01 11:23:29

标签: java android android-layout android-studio

这是我的代码简化。

setOnClickListener
    _view = new View(MainActivity.this);
    _root.addView(_view);

我点击,添加了一个新视图。但我需要以某种方式区分这些观点。所以我厌倦了这一点。

_view.setId(View.generateViewId());

不幸的是,这出现了。

  

调用需要API级别17(当前最小值为16):   android.view.View#generateViewId

感谢任何建议,谢谢!

编辑:对不起,我之前应该说过这个,我需要它在API级别16上。

2 个答案:

答案 0 :(得分:1)

  

调用需要API级别17(当前最小值为16):   android.view.View#generateViewId

您应该提高API级别

 minSdkVersion 17// instead of 16

<强> android:minSdkVersion

  

指定所需的最低API级别的整数   应用程序运行。 Android系统将阻止用户   如果系统的API级别低于,则安装应用程序   此属性中指定的值。

我需要它在API级别16上。

用于标识视图的

setId(View.generateViewId())。我认为如果设置17级会更好。

答案 1 :(得分:0)

而不是View.generateViewId(),您可以使用view.settag(int)来唯一标识您的视图并使用view.getTag()获取视图标记