4

我想为纵向和横向模式(在 java 中)创建布局,并在 java 文件中以编程方式更改方向。有谁能够帮助我?

4

2 回答 2

2

setRequestOrientation()您可以使用Activity 类的方法以编程方式强制改变方向。

 public class Example extends Activity 
  {
  @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    //---change to landscape mode---
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
   }
 }

要更改为纵向模式,请使用ActivityInfo.SCREEN_ORIENTATION_PORTRAIT常量:

有关更多信息,请参阅

编辑

Activity您可以像这样为您的特定添加方向AndroidManifest.xml

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

就布局而言,最好在res/. 例如,您可以res/layout-port为纵向和res/layout-land横向创建。

于 2012-07-12T06:55:49.567 回答
0

试试这个:

if(context.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) 
    {
        // code to do for Landscape Mode     
    } else {

        // code to do for Portrait Mode  
    }
于 2015-02-10T13:12:33.807 回答