我想为纵向和横向模式(在java中)创建布局,并在java文件中以编程方式更改方向。有人能帮助我吗?
答案 0 :(得分:2)
您可以使用Activity类的setRequestOrientation()
方法以编程方式强制更改方向。
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
常量:
有关详细信息,请参阅this。
编辑
您可以像Activity
一样为AndroidManifest.xml
中的特定 <activity android:name=".DemoActivity"
android:label="@string/app_name"
android:screenOrientation="portrait">
添加方向:
res/
就布局而言,最好建议在res/layout-port
下创建不同的文件夹。例如,您可以为纵向创建res/layout-land
,为横向创建{{1}}。
答案 1 :(得分:0)
试试这个:
if(context.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE)
{
// code to do for Landscape Mode
} else {
// code to do for Portrait Mode
}