首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Android中旋转行?

如何在Android中旋转行?
EN

Stack Overflow用户
提问于 2013-03-06 01:54:20
回答 2查看 36.9K关注 0票数 26

我试图用XML在Android应用程序中画一条对角线,但它不起作用。它只是画了一条水平线。

main.xml

代码语言:javascript
复制
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".TestActivity" >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true" 
        style="@style/diagonalStyle">
    </RelativeLayout>

</RelativeLayout>

styles.xml

代码语言:javascript
复制
<resources xmlns:android="http://schemas.android.com/apk/res/android">

    <style name="diagonalStyle">
        <item name="android:background">@drawable/background</item>
    </style>

</resources>

background.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item>
        <rotate
            android:fromDegrees="0"
            android:toDegrees="45"
            android:pivotX="50%"
            android:pivotY="50%" >
            <shape
                android:shape="line"
                android:top="1dip" >
                <stroke
                    android:width="1dip"
                    android:color="#FF0000" />
            </shape>
        </rotate>
    </item>

</layer-list>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-06 04:56:30

你真的只需要改变一个号码就能让它开始工作。只需将fromDegrees更改为45:

代码语言:javascript
复制
<item>
    <rotate
            android:fromDegrees="45"
            android:toDegrees="45"
            android:pivotX="50%"
            android:pivotY="50%" >
        <shape
                android:shape="line"
                android:top="1dip" >
            <stroke
                    android:width="1dip"
                    android:color="#FF0000" />
        </shape>
    </rotate>
</item>

旋转拉伸http://developer.android.com/reference/android/graphics/drawable/RotateDrawable.html

实际上使用属性动画格式http://developer.android.com/guide/topics/resources/animation-resource.html

而你在做一条没有动画的对角线,你想让它从45度开始,最后也是45度。所以把两者都设为45是正常的。

票数 53
EN

Stack Overflow用户

发布于 2018-01-29 11:42:47

您可以尝试如下:创建一个布局"divider.xml“

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<View android:layout_width="match_parent"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="@dimen/one_dp"
    android:layout_weight=".1"
    android:background="@drawable/transparent_divider"
    android:padding="5dp"
    android:rotation="180"/>

创建一个可绘制的形状"transparent_divider.xml":

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <size android:height="1dp" />
    <solid android:color="#808080" />
</shape>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15237582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档