我是android开发的初学者
我想从非主要 Activity
设置屏幕方向
我有两个类:-
- 公共(public)类
MainActivity
扩展AppCompatActivity
在MainActivity
中有这个方法
:-
public void setOrintation(){
if (My_Values.STABLE_MODE_ENABLE == 1) {
int orientation = this.getRequestedOrientation();
int rotation = ((WindowManager) this.getSystemService(
Context.WINDOW_SERVICE)).getDefaultDisplay().getRotation();
switch (rotation) {
case Surface.ROTATION_0:
orientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT;
break;
case Surface.ROTATION_90:
orientation = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE;
break;
case Surface.ROTATION_180:
orientation = ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT;
break;
default:
orientation = ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE;
break;
}
this.setRequestedOrientation(orientation);
} else {
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
}
}
public class My_View extends View Implements View.OnTouchListener
(非内部类)
那么我无法调用MainActivity
setOrintation()
方法
如何做到这一点?
最佳答案
也许你可以尝试使用setOrintation()方法创建接口(interface),并让MainActivity实现这个接口(interface)。在 My_View 对象中,您必须将 Activity 作为此接口(interface)发送
关于java - 如何在android中的非主要 Activity 中设置屏幕方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49131979/