2010-09-23 70 views
15

有沒有辦法使用XML佈局文件顯示一個視圖,例如TextView橫向?我知道你可以在一個活動中使用代碼來旋轉視圖,但是有沒有辦法通過佈局來實現呢?使用XML Android的橫向視圖

回答

22

有,但它是在API 11個新(Android 3.0的):

<TextView 
    android:id="@+id/rotated" 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content" 
    android:rotation="270" 
    android:textSize="32sp" 
    android:textColor="#44CC44" 
    android:text="@string/rotated" /> 

我在2.2試過這個,2.3.1,2.3.3和和 「機器人:旋轉」 WASN」合法。

它在模擬器上運行3.0,但它很奇怪。我還添加了paddingTop =「90dp」(它從測試應用程序中的其他組件中獲得,我試過了),它不僅將下移的屏幕,而且還將右移(遠離文本的頂部,因爲它旋轉了270度)。我沒有真正的Honeycomb設備進行測試,但它看起來像旋轉和填充/邊距可能不會很好地一起玩。

還有一個android.view.View#setRotation(double)方法已被添加到API 11,從代碼調整此屬性。除了旋轉之外,還有rotationX,rotationY,pivotX,pivotY,scaleX,scaleY和translationX,translationY。我還沒有和他們玩過。

有一個列表all the changes in API 11

但我懷疑你想要的東西不僅限於蜂窩。據我所知,沒有。

+0

這是一個老問題,但感謝您的回答 - 我很高興知道它出現在蜂窩中。 – ramblinjan 2012-03-12 21:07:40

+0

我仍然可以在API 19中使用旋轉嗎? – 2016-04-17 10:43:54

3

大衛是對的,:旋轉將工作,但我相信SDK中的東西是搞砸了。圖形佈局將導致文本向左或向右移動(並可能在屏幕外),所以當我在Xoom上運行它時,它會按預期工作。因此,嘗試API 11設備上的設置以查看它的影響。

此外,它看起來好像它也有寬度/高度的東西。我可以使它工作的唯一方法是使文本視圖呈現正方形。換句話說,如果您通常只需要100dp寬,25dp高的textview,請將其設置爲100dp x 100dp,然後旋轉並嘗試。此外,當您旋轉90度時,頂部/底部會變成左/右等。

我找不出RotationX/Y的功能。它似乎對我無能爲力。