获取 android 中子视图的索引

get the index of a child view in android

我有一个包含 TextView 的 TableRow。单击 TextView 时,一个方法接收 TextView。有没有办法知道这个 TextView 是其父视图的第一个、第二个还是第 i 个子视图?

谢谢

onclicklistener 中,获取 TextView 的父级

TableRow r = (TableRow) ((ViewGroup) textView.getParent());
int position = r.indexOfChild(textView)

希望对您有所帮助

首先,您需要使用 .getParent() 获取对父视图的引用。有了父级,您可以使用 indexOfChild(myView) 在父级中获取视图的索引。在一行中,它看起来像这样:

int indexOfMyView = ((TableRow ) myView.getParent()).indexOfChild(myView);

这应该适用于任何类型的父视图:

int indexOfMyView = ((ViewGroup) myView.getParent()).indexOfChild(myView);