当应用程序运行时检测设备配置变化的回调。
using UnityEngine; using UnityEngine.Android;
public class MyApplication : MonoBehaviour { AndroidConfiguration m_PrevConfig;
public void Start() { m_PrevConfig = new AndroidConfiguration(AndroidApplication.currentConfiguration); AndroidApplication.onConfigurationChanged += OnConfigurationChanged; }
public void OnDisable() { AndroidApplication.onConfigurationChanged -= OnConfigurationChanged; }
private void OnConfigurationChanged(AndroidConfiguration newConfig) { if (m_PrevConfig.orientation != newConfig.orientation || m_PrevConfig.screenLayoutSize != newConfig.screenLayoutSize) { ApplyUIChanges(newConfig.orientation, newConfig.screenLayoutSize); }
if (m_PrevConfig.uiModeNight != newConfig.uiModeNight) { ApplyUINightMode(newConfig.uiModeNight); }
if (m_PrevConfig.screenHeightDp != newConfig.screenHeightDp || m_PrevConfig.screenWidthDp != newConfig.screenWidthDp) { ApplyScreenSizeChanges(); }
m_PrevConfig.CopyFrom(newConfig); }
private void ApplyUIChanges(AndroidOrientation orientation, AndroidScreenLayoutSize layoutSize) {
}
private void ApplyUINightMode(AndroidUIModeNight nightMode) {
}
private void ApplyScreenSizeChanges() {
} }