android - 如何从活动外部更改屏幕方向?
问题描述
我进行了很多搜索,发现可以使用以下代码从活动类更改屏幕方向:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
但我的要求是从AsyncTask等活动外部更改屏幕方向。所以请告诉我是否可以这样做,或者有没有其他方法可以这样做。
解决方案
不幸的是,除非您通过Activity
. 这在设计方面很糟糕,您最终可能会为潜在的内存泄漏而挠头。我建议您不要在 Activity 之外执行此操作,如果您这样做,请记住正确清理相关Activity
引用(您可以使用WeakReference
)。