Android布局:如何获取视图的特定祖先

时间:2013-11-19 11:14:45

标签: android android-layout

enter image description here

我的布局类似于捕捉。绿色矩形放置在水平滚动条中,当用户触摸一个时,启动另一个活动。蓝色矩形是其他层,就像水平滚动条一样。

我的问题:当用户触摸绿色矩形时,我需要知道触摸的绿色矩形放在哪个红色矩形中。

有没有简单的方法来获得视图的特定祖先?我希望能够添加和删除更多“蓝色矩形”,所以我不想要view.getParent().getParent().getParent()之类的东西。

谢谢!

1 个答案:

答案 0 :(得分:1)

两种方式,

更简单:

将红色标记设置为其包含的所有子标记,现在当孩子接收到Touch时,您可以通过getTag方法轻松找出红色中的父级。

小巧但很凉爽:

一个。维护所有红色视图的列表 湾在绿色触摸上实施 C。当你接触到触摸时获取x,y d。一旦你收到Touch,循环遍历红色视图列表,获得每个红色视图的Hit Rect,一旦你得到命中rect,只需检查它是否包含你收到的x,y。一旦找到匹配返回。 Wollah你有父母的观点。

希望有所帮助。