我正在开发一个应用程序,我需要在不同方向上提供不同活动的背景图像.所以我以这种方式接近:
@OverrIDepublic voID onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); setLanguage(); // Checks the orIEntation of the screen if (newConfig.orIEntation == Configuration.ORIENTATION_LANDSCAPE) { Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show(); // set background for landscape } else if (newConfig.orIEntation == Configuration.ORIENTATION_PORTRAIT) { Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show(); // set background for portrait }}
和
androID:configChanges="locale|orIEntation|screenSize"
并且在onCreate()中我将背景图像设置为肖像,假设用户将启动处于纵向模式的应用程序.
一切正常,因为用户更改模式,设置相应的背景等等.
但是,如果用户在手机处于横向模式时启动此应用程序,则会在用户以纵向模式启动应用程序之前显示第一次启动时的肖像图像.
那么我该如何解决这个问题呢?在一句话中,为不同方向设置不同背景图像的最佳方法是什么?我是在正确的轨道吗?
解决方法:
在onCreate您的活动中,您可以使用此方法检查当前方向
Configuration newConfig = getResources().getConfiguration();if (newConfig.orIEntation == Configuration.ORIENTATION_LANDSCAPE) { Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show(); // set background for landscape} else if (newConfig.orIEntation == Configuration.ORIENTATION_PORTRAIT) { Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show(); // set background for portrait}
总结 以上是内存溢出为你收集整理的android – 如何在首次启动应用程序时检测方向模式全部内容,希望文章能够帮你解决android – 如何在首次启动应用程序时检测方向模式所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)