我在android中查找父视图的子视图时遇到问题,我执行以下操作
在linelyt中添加了很多这样的子视图后,我开始填写每个子视图的编辑文本,问题是如何在子视图的Textview中获取其编辑文本正在填写的内容/文本集.TIA
答案 0 :(得分:1)
试试这个..
public void findEditText(View parentview) {
if (!(parentview instanceof EditText)) {
System.out.println(((EditText)parentview).getText());
}
// If a layout container, iterate over children and seed recursion.
if (parentview instanceof ViewGroup) {
for (int i = 0; i < ((ViewGroup) parentview).getChildCount(); i++) {
View innerView = ((ViewGroup) parentview).getChildAt(i);
findEditText(innerView);
}
}
}
答案 1 :(得分:0)
第一个答案是好的。如果您的行具有恒定的结构,那么根据您的情况需要更具体的内容......:
for (int i = 0; i < yourLinearLayout.getChildCount(); i++) {
RelativeLayout relativeLayout = (RelativeLayout) yourLinearLayout.getChildAt(i);
TextView textView1 = relativeLayout.getChildAt(0);
TextView textView2 = relativeLayout.getChildAt(1);
EditText editText = relativeLayout.getChildAt(2);
...
}