在Activity 的onCreate()方法中通常会调用setContentView来将一个布局传进去来显示界面,有的时候我们需要拿到这个View来动态的做一些界面处理,比如添加一个子View,这种情况下我们期望有一个与setContentView()对应方法getContentView(),但是通过查阅文档,并不能找到这样一个方法,那么这个View如何获取呢?
方法如下:
private View getContentView(){ ViewGroup view = (ViewGroup) getWindow().getDecorView(); FrameLayout content = (FrameLayout) view.getChildAt(0); return content.getChildAt(0); }
拿到这个View之后,就可以将返回的View强制转化成你所传入的布局文件中最外一层的View了。