屏幕方向更改时旋转视图(但不是布局)

时间:2012-06-06 11:25:04

标签: android layout screen-orientation

我想旋转按钮/ TextViews /等。在屏幕方向改变,但我想保持布局不变。怎么做到呢?我正在使用LinearLayouts。

这就是我的意思: http://i46.tinypic.com/209hwnr.png

3 个答案:

答案 0 :(得分:5)

  

创建res->layout->layout-land并将xml文件放入横向   模式

layout文件夹中的布局文件仅适用于纵向模式现在,如果您需要格局,请创建layout-land文件夹。

答案 1 :(得分:1)

可以通过两种方式完成:

1。)您可以在layout-land文件夹中定义新的xml文件。

2.。)在manifest.xml

中的活动标签中使用android:configChanges="orientation"

然后在您的活动课程中:

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);

    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
        ChangeToLandscape();
    } else {
        ChangeToPortrait();
    }
}

LayoutParams lp;
public void ChangeToLandscape() {
    lp = new LayoutParams(new ViewGroup.MarginLayoutParams(
            LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
    textView1.setLayoutParams(lp);
    lp.setMargins(0, 0, 0, 0); // Whatever you want
    // Similar for other views
}

//Similarly, implement `ChangeToPortrait()`

希望它有所帮助!!!

答案 2 :(得分:0)

您必须更改布局参数。