android 动态添加控件控制属性问题

android移动应用开发关于动态控件添加控制属性的问题,正常情况动态添加的控件是找不到的。

在工程目录下,gen目录R文件下是没有动态分配地址的,findViewById(R.id.xxxx)找不到控件,只能动态在内存空间找。所以findViewById(int id)可以直接使用整形的id。通常情况下,可以为动态添加的控件设置整形id,寻找控件可以使用自己设置的整形地址。虽然在工程目录中找不到id,但动态添加的控件是有地址的。

如果不设置地址,android会默认为动态添加的控件设置一个默认的地址,-1。所以通过findViewById(int id)找的id为正常情况下的默认地址值-1。

要想真正地控制新添加的控件,只需要手动的为新控件设置一个容易记的id,一般情况下,为新控件设置一个整形的地址,比如1,2等等,然后通过findViewById(id)来查找控件,正因为在工程目录下没用动态地添加地址id,所以把地址值设置成R.id.xxxx无效,比如可以通过findViewByid(1)来直接来控制新添加的id,新添加的id可以使用setId(int id)为新添加的控件设置新的id,这样就可以找到动态添加的控件控制其属性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值