我知道如何使用View.getRootView()获取根视图。我还可以从onClick参数为View的按钮事件中获取视图。但是我怎样才能在活动中获得 视图 ?
onClick
如果您需要活动的根视图(以便您可以在那里添加内容),请使用
findViewById(android.R.id.content).getRootView()
另据报道,在某些设备上,您必须使用
getWindow().getDecorView().findViewById(android.R.id.content)
反而。
请注意,正如 Booger 报告的那样,这可能位于某些设备上的导航栏(带有后退按钮等)的后面(但在大多数设备上似乎并非如此)。
如果您需要使用setContentView()方法获取添加到活动中的视图,那么正如 pottedmeat 所写,您可以使用
setContentView()
final ViewGroup viewGroup = (ViewGroup) ((ViewGroup) this .findViewById(android.R.id.content)).getChildAt(0);
但最好在您的 xml 布局中将 id 设置为此视图并使用此 id 代替。