gpt4 book ai didi

Java (Android) : Ive created a bunch of views using a loop, 并希望删除其中之一

转载 作者:行者123 更新时间:2023-11-29 22:09:31 25 4
gpt4 key购买 nike

您好,我已经设置(充分膨胀)了一堆按钮,它们是从包含按钮、 TextView 等的相对布局构建的。我希望能够删除/隐藏/消失整个按钮集。我假设我可以在 RelativeLayout 上执行 setVisibility(View.GONE) 但我不确定如何引用此布局。我已经为它设置了一个 ID,但在尝试引用它时我真的迷路了。启动此代码的按钮是一个删除按钮,因此 OnClick(View v) 包含删除按钮的 ID。我刚刚尝试了 getparent,但效果不是很好(崩溃)。

谁能指出我正确的方向?

这里是我试过的 getparent 代码。

            RelativeLayout dropping = (RelativeLayout) ((Activity) v.getParent()).findViewById(R.id.tp_container);
dropping.setVisibility(View.GONE);

我希望有这样的东西,如果可能的话,id 可以用另一个变量来表达?

relativeViewVariable.id(actualId).setVisibility(View.GONE);

这很尴尬,但我不知道这是 Java 还是 Android 问题?

干杯

最佳答案

如果您动态创建 View ,那么您必须设置自定义 ID,然后从它的父 View 中获取具有该 ID 的 View !

View textView;
RelativeLayout layout = new RelativeLayout (this);
setContentView(layout);

for(int i=0;i<10;i++){
textView = new TextView(this);
textView.setId(i);
layout.addView(textView);
}

/* FOR LOOP THAT ONE */
TextView referencedTextView = (TextView) layout.findViewById(5);
referencedTextView.setVisibility(View.GONE);

如果您只想隐藏布局中的所有按钮,您可以遍历所有父 View 。

LinearLayout layout;
View view;
for (int i = 0; i < layout.getChildCount(); i++) {
if(layout.getChildAt(i) instanceof Button){
((Button)layout.getChildAt(i)).setVisibility(View.GONE);
}

}

关于Java (Android) : Ive created a bunch of views using a loop, 并希望删除其中之一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10009632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com