我收到错误“LiveWallpaperService类型的方法getWindowManager()未定义”

由于我正在创建 Activity ,因此无法引用该 Activity ,在onCreateEngine()中初始化主类之前,如何解决屏幕宽度和高度问题?

这是第一件事。在使用背景图像进行尺寸标注之前,事实证明,使用不同的屏幕尺寸会很麻烦。

有人可以在这里帮我吗?我试过了:

DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);

没有运气。

还尝试了:
((Activity) getContext()).getWindowManager().getDefaultDisplay().getMetrics(metrics);

我收到错误:“ Activity 无法解析为一种类型”

也:
((WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE))

使用:“WindowManager无法解析为类型”

无论我尝试什么,将代码放置在什么地方,我总是遇到相同的错误,我尝试使用
onSurfaceChanged

Int设置为width和height,但是它们初始化得太晚了,我的应用程序崩溃了,有人可以帮助我吗?

最佳答案

mContext = getBaseContext();
DisplayMetrics displayMetrics = new DisplayMetrics();
displayMetrics = mContext.getResources().getDisplayMetrics();
mScreenWidth = displayMetrics.widthPixels;
mSreenHeight = displayMetrics.heightPixels;

09-10 01:58
查看更多