如何删除使用addContentView()添加的布局?

我正在使用addContentView()添加一个布局。 我怎样才能删除button点击这个布局?

Solutions Collecting From Web of "如何删除使用addContentView()添加的布局?"

假设contentView是通过window.addContentView()添加的视图

 ((ViewGroup) contentView.getParent()).removeView(contentView); 

尝试一下

 View youAddedView; ViewGroup rootView = (ViewGroup) findViewById(android.R.id.content); for (int i = 0; i < rootView.getChildCount(); i++) { if(rootView.getChildAt(i) == yourAddedView) { // do anything here } } 

如果你已经有了对视图的引用,你可以简单地做:

 ViewGroup rootView = (ViewGroup) findViewById(android.R.id.content); rootView.removeView(viewToRemove); 

而不是通过ViewGroup循环。

不幸的是,没有办法删除addContentView()添加的内容视图。 你能做的最好的就是调用setVisibility(View.GONE)来隐藏它。

这就是为什么当内容视图被设置或添加到活动时,活动的onContentChanged()才会被调用。

你可以在这里做两件事,你可以设置可见性去button的点击事件。 或者你可以设置布局参数为布局的宽度和高度为0dp它会隐藏你的布局显示