我注意到在我的类中扩展了View
,以获得屏幕大小我必须使用getContext
DisplayMetrics dispM = getContext.getResources().getDisplayMetrics();
int width = dispM.WidthPixels;
int height = dispM.HeightPixels;
如果我想在我的活动中做同样的事情,我必须用getContext
替换getBaseContext
。为什么会这样?
答案 0 :(得分:3)
View.getContext():返回视图当前正在运行的上下文。
getBaseContext():是活动上下文本身。即使你可以使用this
答案 1 :(得分:2)
getContext()返回视图当前运行的上下文。活性。
getBaseContext():如果您需要从另一个上下文中访问Context,请使用此
答案 2 :(得分:2)
View.getContext()
通常返回当前Activity视图的上下文。从另一个上下文示例Activity中访问Context时使用ContextWrapper.getBaseContext()
。
见 - Difference between getContext() , getApplicationContext() , getBaseContext() and "this"