2014-12-04 68 views
1

我是Android新手。將圖片與Android中的圖片對齊

如何使用相對佈局將textView與ImageView的中心對齊?

我嘗試下面的代碼:

<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" 
tools:context="${relativePackage}.${activityClass}" > 

<ImageView 
    android:id="@+id/item_icon" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:adjustViewBounds="true" 
    android:maxHeight="15dp" 
    android:maxWidth="15dp" 
    android:src="@drawable/icon" /> 

<TextView 
    android:id="@+id/item_counter" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_toRightOf="@+id/item_icon" 
    android:text="Counter" /> 

</RelativeLayout> 

但文字不與畫面的中心對齊。

謝謝!

+1

最好的方法是將圖像作爲複合可繪製添加到TextView中,而不是使用ImageView。即:'android:drawableLeft =「@ drawable/icon」'。 – 2014-12-05 08:14:32

回答

0

使用layout_alignTop和layout_alignBottom將文本視圖的頂部和底部對齊到imageview。然後確保文本具有中心重力。這應該將其與中間對齊。 (我相信它應該是默認情況下的權重,但是強迫它永遠不會受傷)。

0

相對佈局的孩子可以使用:

android:layout_centerInParent="true" 
0

你只需要調整您的imageviews頂部和底部的邊框之間你的TextView。而且一定要將你的textview的重心居中,這樣它纔會集中在你的imageview中。

<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" 
     tools:context="${relativePackage}.${activityClass}" > 

<ImageView 
    android:id="@+id/item_icon" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:adjustViewBounds="true" 
    android:maxHeight="15dp" 
    android:maxWidth="15dp" 
    android:src="@drawable/icon" /> 

<TextView 
    android:id="@+id/item_counter" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBottom="@+id/item_icon" 
    android:layout_alignTop="@+id/item_icon" 
    android:gravity="center" 
    android:text="Counter" /> 

對於一個更好的方法,恕我直言,你的ImageView添加到您的TextView作爲drawableLeft,所以,這將代表更多用戶。