Java 如何在启动时保存应用程序定向状态
我正在开发一款媒体播放器android应用程序。我在我的res文件夹中为不同的活动设置了纵向和横向布局。我希望每个单独的启动实例都有一个方向。这意味着,如果用户以纵向模式启动应用程序,则应显示“我的唯一纵向布局”,直到其被销毁;如果用户以横向模式启动应用程序,则应显示“我的唯一纵向布局”。有办法解决这个问题吗 这是我的舱单:Java 如何在启动时保存应用程序定向状态,java,android,Java,Android,我正在开发一款媒体播放器android应用程序。我在我的res文件夹中为不同的活动设置了纵向和横向布局。我希望每个单独的启动实例都有一个方向。这意味着,如果用户以纵向模式启动应用程序,则应显示“我的唯一纵向布局”,直到其被销毁;如果用户以横向模式启动应用程序,则应显示“我的唯一纵向布局”。有办法解决这个问题吗 这是我的舱单: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schema
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.musicianfocus.ben.wordedfm">
<uses-permission android:name="android.permission.INTERNET"/>
<supports-screens
android:smallScreens="false"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true"
/>
/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".SplashActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:label="@string/app_name">
<category android:name="android.intent.category.LAUNCHER" />
<intent-filter>
<action android:name="com.musicianfocus.ben.wordedfm.actionPLAY" />
</intent-filter>
</activity>
<service android:name=".RadioService"
android:enabled="true"/>
</application>
</manifest>
/>
这应该可以通过编程禁用方向更改:)您可以使用此选项
<activity android:name=".MainActivity"
android:screenOrientation="locked">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
这是我的建议!
不必用按钮更改,您可以将其保存在数据库或您想要保护的设置文件中,并使用文件读取器加载它们。这不是一个精确的解决方案,而是一个Jugaad,创建两个活动,一个用于横向,一个用于纵向,当用户启动应用程序时,以编程方式检查方向,例如,若用户以纵向模式启动应用程序,则启动纵向模式的活动,否则为横向模式。此解决方案将有一个冗余代码,但它将根据您的需求工作 横向模式不适用于您的代码。我希望应用程序以用户设置的模式打开
<activity android:name=".MainActivity"
android:screenOrientation="locked">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>