第一次我试过这个,所以不知道它,但需要尽快修复。我试图使它做一个新的意图,当我旋转设备景观。
这是我的密码:
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
// Checks the orientation of the screen
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
Intent i = new Intent(getApplicationContext(),
VideoLandscape.class);
i.putExtra("url", LINK);
i.putExtra("small", videoPath);
startActivity(i);
} else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
}
}
//Manifest
<activity
android:name="com.****.media.tv.Video"
android:configChanges="orientation|keyboardHidden"
android:label="@string/title_TV">
</activity>
<activity
android:name="com.****.media.tv.VideoLandscape"
android:label="@string/title_TV">
</activity>非常感谢查尔顿桑塔纳
发布于 2013-08-14 13:18:59
android:configChanges="keyboardHidden|orientation|screenSize"在活动标签中
发布于 2013-08-14 13:41:45
您需要在|screenSize属性中添加android:configChanges属性,如下所示
android:configChanges="keyboardHidden|orientation|screenSize"因为API级别13之后有一些小的变化,这是文档中提到的,用于转移onConfigurationChanged()。
注意:从Android3.2 (API级别13)开始,当设备在纵向和横向之间切换时,“屏幕大小”也会发生变化。因此,如果要防止在为API级别13或更高级别开发时由于方向更改而重新启动运行时(如minSdkVersion和targetSdkVersion属性声明的那样),则除了“方向”值之外,还必须包含"screenSize“值。也就是说,您必须标记android:configChanges="orientation|screenSize".但是,如果应用程序的目标是API级别12或更低,那么您的活动总是自行处理此配置更改(即使在Android3.2或更高的设备上运行,此配置更改也不会重新启动您的活动)。
从这里开始
https://stackoverflow.com/questions/18232834
复制相似问题