是否可以在启动任何活动之前获得设备纵横比?
我正在尝试根据我的设备被标识为“long”还是“not_long”来设置宽度。这应该在活动启动之前很久就可用,但我不确定在哪里可以获得这个变量。执行此方法时,活动不可用。另外,为了避免内存泄漏,我不想将活动传递给包含以下方法的类。
这是失败的调用方法:
public int getDefaultWidth() {
Configuration myConfig = new Configuration();
myConfig.setToDefaults();
myConfig = getResources().getConfiguration();
switch (myConfig.screenLayout & Configuration.SCREENLAYOUT_LONG_MASK) {
case Configuration.SCREENLAYOUT_LONG_NO: {
return this._defaultWidth;
}
case Configuration.SCREENLAYOUT_LONG_YES: {
return this._defaultWidthLong;
}
case Configuration.SCREENLAYOUT_LONG_UNDEFINED: {
return this._defaultWidth;
}
}
return this._defaultWidth;
}