Android:如何旋转LinearLayout

Posted

技术标签:

【中文标题】Android:如何旋转LinearLayout【英文标题】:Android:How to rotate LinearLayout 【发布时间】:2012-12-04 08:27:22 【问题描述】:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout1"
android:layout_
android:layout_
android:background="@drawable/bg2x" >
<LinearLayout 
    android:id="@+id/linear"
    android:layout_
    android:layout_
    android:orientation="vertical"
    android:gravity="center"
    android:layout_alignParentTop="true"
    android:background="#FF00FF00"
  >
    <TextView 

        android:layout_
        android:layout_
        android:textColor="#FF000000"
        android:textSize="70dp"
        android:text="test linearlayout"
        />

</LinearLayout>

现在我想将“linear”布局旋转 90度。 * 而且我不想使用动画*,还有其他方法可以实现吗? 请帮助我。在此先感谢!

【问题讨论】:

您要旋转它,在您的 XML 中...还是以编程方式(即 onClick)? 你试过这个***.com/questions/1930963/rotating-a-view-in-android 吗? 使用 android:rotation 标签 【参考方案1】:

由于不需要动画,从 API 11 或以上就可以使用

android:rotation = "90"

在 XML 本身中旋转。如果您想在代码中执行此操作,例如在单击按钮后,那么您也可以使用它的 java 等号

 yourLayout  = (LinearLayout) findViewById(R.id.your_id);
 yourLayout.setRotation(90.0f);

但不是在 API 11 之前。请参阅 documentation。

机器人:旋转

视图的旋转,以度为单位。

必须是浮点值,例如“1.2”。

这也可能是对资源的引用(形式为 “@[package:]type:name”)或主题属性(形式为 "?[package:][type:]name") 包含此类型的值。

这对应于全局属性资源符号轮换。

编辑:看到评论后

是的,我在 API 级别 11 中知道这种方法。但是较低的 api 呢 等级?

我认为您可以自己旋转视图。而且我相信 this 线程中的 lchorus 和 Pete 的回答确实有效。对于皮特的回答,他正在使用动画,但您可以将动画持续时间设置为 0 以在没有任何可见动画的情况下执行此操作。据我所知,没有其他直接的方法..

【讨论】:

是的,我在 API 级别 11 中知道这种方法。但是较低的 API 级别呢?谢谢【参考方案2】:

使用这个库,您可以旋转整个视图层次结构https://github.com/rongi/rotate-layout

这样

【讨论】:

以上是关于Android:如何旋转LinearLayout的主要内容,如果未能解决你的问题,请参考以下文章

旋转android设备时如何设置全屏视频

如何从 android SERVICE 禁用/启用屏幕旋转?

如何始终保持android旋转景观

如何阻止 Android 应用程序旋转? [复制]

如何旋转纵向/横向 Android 模拟器? [复制]

如何将屏幕设置为不旋转(android)? [复制]