我的布局就像这样
<ParentLinearlayout>
<ChildLinearlayout>
<Button>
</ChildLinearlayout>
<ChildLinearlayout>
<Button>
</ChildLinearlayout>
</ParentLinearlayout1>
更改ChildLinearlayout的数量,动态添加和删除。
单击按钮时,我想删除作为Button的父级的ChildLinearlayout。
但我不知道index linearlayout。索引经常被更改,因此无法使用标记。
如何知道LinearLayout索引?
答案 0 :(得分:2)
/api/users
答案 1 :(得分:1)
另一种更强大的方法是在将每个子项添加到父项时为其分配标记。
View child = // TODO
child.setTag("child" + i);
parent.addView(child);
并使用findViewByTag()再次找到它。
parent.removeView(parent.findViewByTag("child4"));
答案 2 :(得分:0)
parent.removeView((View)button.getParent());
请注意这一点,因为它非常依赖于您的View层次结构。
答案 3 :(得分:0)
public void showListofData() {
if (linearlayout.getChildCount() > 0) {
linearlayout.removeAllViews();
}
for (int i = 0; i < mylist.size(); i++) {
LayoutInflater inflater = null;
inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final View mLinearView = inflater.inflate(
R.layout.row, null);
TextView cName = (TextView) mLinearView
.findViewById(R.id.txt_name);
clinicName.setText(mylist.get(i).name);
mLinearView.setTag(mylist.get(i));
linearlayout.addView(mLinearView);
mLinearView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
int pos=(Integer)v.getTag();
}
});
}
}