如何在android中以编程方式控制横向和纵向?

如何在android中以编程方式控制横向和纵向?,android,Android,我使用android sdk 4.0开发应用程序,并将该.apk文件安装在我的三星标签中。当我运行该应用程序时,它工作正常。如果我将选项卡纵向更改为横向或反向,屏幕也会更改 但我的要求是,无论将模式从纵向更改为横向,还是从横向更改为纵向,我的应用程序都应仅在纵向模式下运行。您可以在AndroidManifest.xml中定义模式,如下所示 android:screenOrientation=“肖像”在android:name=“.activityName” 比如说像这样, <activit

我使用android sdk 4.0开发应用程序,并将该.apk文件安装在我的三星标签中。当我运行该应用程序时,它工作正常。如果我将选项卡纵向更改为横向或反向,屏幕也会更改


但我的要求是,无论将模式从纵向更改为横向,还是从横向更改为纵向,我的应用程序都应仅在纵向模式下运行。

您可以在AndroidManifest.xml中定义模式,如下所示

android:screenOrientation=“肖像”
android:name=“.activityName”

比如说像这样,

<activity android:name=".MainActivity" android:label="@string/app_name" android:screenOrientation="portrait">

为manifest.xml文件中的每个活动添加
android:screenOrientation=“肖像”

您也可以通过编程方式执行此操作,使所有活动都扩展为
AbstractActivity
-

public abstract class AbstractActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
    }
}

你可以把它用于景观设计

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 
要更改为纵向模式,请使用

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

如果你先搜索,你会发现这个问题已经被回答了。不过,我会在这里再次发布答案

转到您的清单文件,在您只想保留纵向的活动下,插入以下行
android:screenOrientation=“肖像” 下面给出了一个例子

<activity android:name=".YourActivity"
      android:label="Your Activoity"
      android:screenOrientation="portrait">


这将使您的活动只能处于纵向模式,即使您将设备保持在横向模式

在您的清单文件中

<activity android:name=".MainActivity" android:label="@string/app_name" android:screenOrientation="portrait">
<activity android:name=".MainActivity" android:label="@string/app_name" android:screenOrientation="portrait">
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);