我需要在垂直方向上获取LinearLayout中的动态添加视图位置。 例如,我在LinearLayout上动态添加了4个TextView,然后我需要在第三个位置更改文本颜色的位置,颜色将会不同。如何通过获取添加视图的位置来实现它。如何获取在LinearLayout上动态添加视图的位置
1
A
回答
1
你可以这样做就像是
ViewGroup parent;
int position;
for(int i = 0; i < parent.getChildCount(); ++i) {
int currentViewId = parent.getChildAt(i).getId();
if(currentViewId == wantendViewId) {
position = i;
}
}
这是(在我看来)最简单的方法
0
如果你总是知道TextViews在你的LinearLayout的数量,你可以使用函数getChildAt(int position)
。这会返回一个View
,然后您可以将其转换为TextView
以便能够执行所需的操作。
如果你不知道元素的数量,你可以设置每个TextView中的ID(为了能够识别特定的一个),然后运行通过他们这样的:
for(View view : myLinearLayout)
if(view instanceof TextView && view.getId().equals(idToSearchFor))
//Do what needs to be done.
0
我见下列选项:
- 声明一些ID在资源的
<item type="id">first</item>
形式,并将其分配给 意见,增加布局,使用后正常findViewById()
机制 - 通过
setTag
方法,之后使用findViewWithTag
机制的意见 - Remeber位置分配一些标签的观点,你要添加到布局,并使用它们争夺
getChildAt
方法
0
我简单的选择。
假设你添加
视图V; //任何观点
linearlayout.addview(V); //添加布局
虽然ü要修改视图。
simpaly删除旧视图。
linearlayout.removeView(v);
添加新的更新视图对象
V-更新的新视图
linearlayout.addview(V);
相关问题
- 1. 如何动态添加视图到LinearLayout?
- 2. 获取LinearLayout中的视图位置(Android)
- 3. 如何在Android上动态添加LinearLayout?
- 4. 如何在TextView上动态添加LinearLayout
- 5. 如何获取动态添加到LinearLayout的点击子视图的ID?
- 6. 涉及动态添加的LinearLayout视图的LinearLayout容器
- 7. 动态删除LinearLayout中动态添加的视图
- 8. 如何在动态添加视图后获取StackLayout的高度?
- 9. 动态添加一个孩子到LinearLayout与获取每个孩子的位置
- 10. 如何在地图上获取动态位置的方向iphone
- 11. 在特定位置添加视图到的LinearLayout
- 12. 添加的TextView上的LinearLayout动态
- 13. 动态添加图片视图并设置其位置
- 14. 在LinearLayout中动态添加视图horizontaly和verticaly
- 15. Android:AdapterView在向LinearLayout动态添加视图时滞后
- 16. 如何获取上一个滚动视图位置,滚动视图
- 17. 如何动态添加视图或在其他组件上添加视图?
- 18. LinearLayout使用动画添加视图
- 19. 动态添加ImageView到LinearLayout
- 20. 动态添加textViews到linearLayout
- 21. 设置动态添加视图的OnClickListeners
- 22. LinearLayout在其他视图上方添加视图Android
- 23. 获取视图的位置
- 24. 获取视图的位置
- 25. 在Android上动态添加视图和定位
- 26. 动态添加视图水平LinearLayout离开屏幕
- 27. 如何在linearlayout的左上角位置设置图像?
- 28. Android获取视图在水平滚动视图中的位置
- 29. 在视图上方动态添加滚动视图iphone
- 30. 如何定位动态添加的子文本视图和图像视图?