2013-07-19 42 views
1

我試圖讓一些文本出現在ImageView的中心。但是使用這個xml(下面)我看到它的文字楔在FrameLayout的左上角。我做錯了什麼?如何獲得以ImageView爲中心的文本視圖

<FrameLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:layout_weight="1" 
    > 

     <ImageView 
      android:id="@+id/levbut" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:scaleType="centerInside" 
      android:src="@drawable/starbut" 
      /> 

    <TextView 
     android:id="@+id/tvtest" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Hello" 
     /> 

</FrameLayout> 
+1

設置android:gravity =「center」的textView。 –

+0

沒有什麼區別:-( – Mick

回答

2

您可以將重力添加到FrameLayout,layout_gravity到textView,或將其更改爲RelativeLayout並添加centerInParent =「true」。

<FrameLayout 
    ... 
    android:gravity="center"> 

<FrameLayout 
    ... /> 
    <TextView 
     ... 
     android:layout_gravity="center" /> 
</FrameLayout> 

<ReltiveLayout 
    ...> 
    <ImageView ... /> 
    <TextView 
     ... 
     android:layout_centerInParent="true" /> 
</RelativeLayout> 
+0

在TextView中添加了android:layout_gravity =「center」 – Mick

0

變化android:layout_gravity="center"android:gravity="center"FrameLayout元素。

0

嘗試此添加機器人:比重= 「中心」 爲TextView的,改變其寬度和高度,以匹配父

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:layout_gravity="center" > 

<ImageView 
    android:id="@+id/levbut" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:scaleType="centerInside" 
    android:src="@drawable/star_but" /> 

<TextView 
    android:id="@+id/tvtest" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:text="Hello" 
    android:gravity="center"/> 

相關問題