如何在Android中为横向和纵向模式设置单独的闪屏?

时间:2016-03-13 08:45:43

标签: java android splash-screen

我正在使用Android应用程序,我需要设置单独的启动画面,一个用于纵向,一个用于横向。两者都是不同的图像。我该怎么办?

activity_splash.xml

Posts entity = new Post();
Posts savedEntity = repository.save(entity);

SplashScreen.java

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >

    <ImageView
        android:id="@+id/imgLogo"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/wwe_logo" />

</RelativeLayout>

3 个答案:

答案 0 :(得分:0)

如果在制作layoutlayout-land后两个布局没有自动切换,那么您可以在使用onCreate

之前在setContentView中手动执行
 if (this.getWindow().getWindowManager().getDefaultDisplay()
                    .getOrientation() == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT) {
               setContentView(R.layout.activity_splash_portrait)
            } else {
               setContentView(R.layout.activity_splash_land)
            }

答案 1 :(得分:0)

使用相同的文件名制作2个不同的布局,并将横向布局放置在layout-land中,将肖像放在默认布局中 然后无需处理来自java类

的任何内容

答案 2 :(得分:0)

遵循这些步骤。

  1. 在res文件夹下创建与布局文件夹相同的文件夹布局。
  2. 接下来,复制activity_splash.xml文件并粘贴到新的文件夹layout-land中。 (此activity_splash是SplashActivity java类的XML文件)
  3. 然后将纵向启动图像更改为横向启动图像。 无需更改SplashActivity java类中的Java代码,也无需更改清单文件。