我在编写动态壁纸的方向问题。基本上,画布将根据在其上方打开的应用程序旋转。我测试了这一点并意识到onSurfaceChanged()方法在我从之前打开的应用程序返回主屏幕时触发,该应用程序的方向已更改。
我想更好的问题是,为什么我的动态壁纸表面会在应用程序打开时发生变化并且方向发生变化?有没有办法防止我的动态壁纸定位发生变化?谢谢,希望有意义吗?
答案 0 :(得分:1)
Android应用程序在方向更改时重新启动活动。 你可以使用
onConfigurationChanged()
方法。答案 1 :(得分:1)
您可以使用以下方法从android.service.wallpaper.WallpaperService。引擎类中处理屏幕方向:
public void onSurfaceChanged(SurfaceHolder holder, int format, int width, int height)
...只是相应地处理事件。
你不能将 android:configChanges 或 android:screenOrientation 添加到WallpaperService! (创建动态壁纸时使用的)
我会将此作为对“Anirudha”答案的评论添加,但我没有足够的声誉这样做。