我已经看到了关于这个主题的其他一些问题,但到目前为止,没有一个答案能解决我的问题。我基本上只是不希望每次重新定向屏幕时都重新创建我的活动。根据我的发现,以下内容应该有效:
清单文件
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="internalOnly" android:versionCode="1">
<application android:label="Service Portal">
<activity android:name =".CallManagement" android:configChanges="orientation"></activity>
</application>
<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</manifest>
CallManagement.cs
public override void OnConfigurationChanged(Android.Content.Res.Configuration newConfig)
{
base.OnConfigurationChanged(newConfig);
}
我尝试将android:configChanges更改为“orientation | keyboardHidden”。由于我的目标是API级别10,我多次看到包含“screenSize”的建议不适用。
我在OnConfigurationChanged中放置一个断点,它永远不会捕获,OnCreate肯定会继续运行。我做错了什么,或者我误解了这个功能应该做什么?
答案 0 :(得分:0)
您是否尝试过特定方向的屏幕锁定?
<activity android:name="MyActivity" android:screenOrientation="landscape">.
我以编程方式锁定屏幕,我没有发现布局和请求方向一样好,然后使用提供的int锁定方向。
如果您不想锁定屏幕,但希望活动在方向更改时正确调整大小,则可能会重新考虑您的设计。保存游戏状态然后允许android重新创建活动被认为是动态屏幕的最佳实践。