我添加視圖到rootview
以這種方式無法從根視圖中刪除視圖
private RelativeLayout addThisView;
private View rootView;
LayoutInflater inflater = LayoutInflater.from(mContext);
addThisView = (RelativeLayout) inflater.inflate(R.layout.loading_temp_cover, null, false);
if(rootView instanceof FrameLayout){
((FrameLayout)rootView).addView(addThisView);
}
試圖從根視圖中刪除視圖
/* remove view from the root view start */
rootView = ((Activity) mContext).getWindow().getDecorView().findViewById(android.R.id.content);
RelativeLayout loadingTempCoverRelative =(RelativeLayout) rootView.findViewById(R.id.loadingTempCoverRelative);
if(loadingTempCoverRelative!=null){
if(rootView instanceof FrameLayout){
((FrameLayout)rootView).removeView(loadingTempCoverRelative);
}
}
/* remove view from the root view end */
,然後當我檢查loadingTempCover
是存在(下面的代碼)。它仍然存在.. 我調試看看;當到達並完成removeView()
函數時,它不會產生任何效果。我仍然可以在rootview
中看到loadingTempCover
佈局。我不明白我在哪裏做錯了..
rootView = ((Activity)mContext).getWindow().getDecorView().findViewById(android.R.id.content);
RelativeLayout loadingTempCoverRelative =(RelativeLayout) rootView.findViewById(R.id.loadingTempCoverRelative);
if(loadingTempCoverRelative!=null){
loadingTempCoverRelative.setVisibility(loadingTempCoverRelative.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE);
return;
}
我理解的問題。怎麼可能android studio導致這個問題。有趣的..我重建項目和removeView函數正在工作。順便說一句,我不明白你爲什麼把我的問題標記爲沒用?這太有趣了.. – fthopkins