gpt4 book ai didi

android - 我怎么知道是否存在 inflatedView

转载 作者:行者123 更新时间:2023-11-29 17:58:04 24 4
gpt4 key购买 nike

当我按下一个按钮时,我希望出现一个 inflatedView ,当我按下同一个按钮时,这个 View 消失...

ViewGroup parent = (ViewGroup) findViewById(R.id.inflate_place);
View view = LayoutInflater.from(getBaseContext()).inflate(R.layout.inflate_find, null);

for(int i=0; i<parent.getChildCount(); ++i) {
View nextChild = parent.getChildAt(i);

// Here i want that if is the same layout, this disappear
if (nextChild.equals(view)) {
parent.removeView(nextChild);
return;
}
}

parent.addView(view);

最佳答案

一遍又一遍地重新膨胀相同的 View 通常不是最好的方法。

只需向您的 Activity 添加一个指向您要隐藏的 View 的变量:

View myView;

在 onCreate 中,膨胀你的 View :

myView = LayoutInflater.from(getBaseContext()).inflate(R.layout.inflate_find, null);

现在,如果你想显示 View ,你可以像在现有代码中一样添加它:

ViewGroup parent = (ViewGroup) findViewById(R.id.inflate_place);
parent.add(myView);

可以这样删除:

If (myView.getParent()!=null){
((ViewGroup) myView.getParent()).removeView(myView);
}

切换 View 的可见性会像这样工作:

If (myView.getParent()!=null){
((ViewGroup) myView.getParent()).removeView(myView);
} else {
ViewGroup parent = (ViewGroup) findViewById(R.id.inflate_place);
parent.add(myView);
}

您可能想看看 View.setVisibility()。这通常用于显示和隐藏 View :http://developer.android.com/reference/android/view/View.html#setVisibility%28int%29

关于android - 我怎么知道是否存在 inflatedView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17887450/

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