我可以告诉其他活动使用此方法从当前活动更改其方向吗?
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
我正在尝试做类似的事情:
game.class.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
但这不会编译。
答案 0 :(得分:1)
编辑。 只需使用所选值传输字符串,例如方向。并使用另一个类中的构造函数构建它。然后在onCreate中你可以写if(this.orientation ==“Landscape”{ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); }
希望它对你有所帮助。
答案 1 :(得分:0)
当您运行下一个活动时,请发送有关您用于开始下一个活动的意图的额外信息,并在下一个活动中使用onCreate根据传递的信息更改方向。
实施例
Intent intent = new Intent(getBaseContext(), NextActivity.class);
intent.putExtra("Orientation", "landscape");
startActivity(intent)
在下一个活动中执行以下操作
Intent intent = getIntent();
String orientation = intent.getStringExtra("Orientation")
android:configChanges="orientation|keyboardHidden" do this in manifest
使用onConfigurationChanged活动方法来检测方向更改
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
// Checks the orientation of the screen
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
} else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
}
}