首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以编程方式将ID设置为视图

以编程方式将ID设置为视图
EN

Stack Overflow用户
提问于 2016-03-18 00:51:39
回答 2查看 10.2K关注 0票数 9

我是以编程方式添加按钮的,按钮的数量取决于某些条件。要为RelativeLayout.LayoutParams添加规则,即按钮应该对齐对方的顶部,我需要设置它们的I。所有2-3年前的答案都表明,setId(int)是可以的(例如,setId(1)),但是现在它被禁止了(UPD )。这并不是只适用于整数字。有了int变量,一切都好。不知道为什么)。现在怎么做呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-18 00:58:02

根据API接口的说法,这不是禁止的,也不是被反对的。以下是使用它的最佳方法。

  1. 创建res/values/ids.xml并定义
  2. 一旦你拥有了它,你就可以使用setId了 R.id.button1;R.id.button2;
票数 16
EN

Stack Overflow用户

发布于 2016-03-18 01:10:52

既然你说你可以有任意数量的按钮,那么你就可以为每个按钮设置id -

代码语言:javascript
复制
button.setId(View.generateViewId()); //Works for API 17 and above

如果minSdk低于17,你可以使用-

代码语言:javascript
复制
 button.setId(counter++); //Each time counter will be increment giving a unique id
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36074297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档