新手问一下这一段代码什么意思关于喜马拉雅项目UILoader的
if (mUiLoader.getParent() instanceof ViewGroup) { ((ViewGroup) mUiLoader.getParent()).removeView(mUiLoader); }
您的每一个用心回答,都会让这个世界变得更美好一些!
android的View有一个规则,如果这个view已经添加到其他的ViewGroup里了,必须要脱离关系才可以加入到新的ViewGroup里.
假设你有这么一个场景,你的这个mUiLoader没有销毁,然后又进了你当前Fragment的声明周期方法,这个UiLoader不是新创建的,之前已经添加到某个ViewGroup里了.如果你再添加的话则会报错.
所以加了这个代码,用于防御.
android的View有一个规则,如果这个view已经添加到其他的ViewGroup里了,必须要脱离关系才可以加入到新的ViewGroup里.
假设你有这么一个场景,你的这个mUiLoader没有销毁,然后又进了你当前Fragment的声明周期方法,这个UiLoader不是新创建的,之前已经添加到某个ViewGroup里了.如果你再添加的话则会报错.
所以加了这个代码,用于防御.