2014-04-14 40 views
0

我需要將圖像視圖下方的textview居中。 這是從現在開始我得到一個連續截圖:圖像視圖下方的中心textview

enter image description here

我需要把TextView的文本「30」與拇指圖像視圖下方了手,並居中。現在的高度位置很好。

像這樣:

enter image description here

這是我的佈局文件:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="#5981b2" 
    android:orientation="vertical" > 

    <ImageView 
     android:id="@+id/imageView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:layout_marginLeft="2dp" 
     android:src="@drawable/facebook" /> 

    <ImageView 
     android:id="@+id/imageView2" 
     android:layout_width="50dp" 
     android:layout_height="50dp" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" 
     android:src="@drawable/valoracion" /> 


    <TextView 
     android:id="@+id/textView3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/imageView2" 
     android:layout_centerHorizontal="true" 
     android:text="30" 
     android:textAppearance="?android:attr/textAppearanceSmall" /> 

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:lines="2" 
     android:text="Large Text" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:layout_toRightOf="@id/imageView1" 
     /> 

</RelativeLayout> 

任何幫助是值得歡迎的。

回答

1

如果你不想使用空間,它可以表現不同的其他屏幕,例如,你可以使用的TextView與compoundDrawable這樣的:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:background="#5981b2" 
android:orientation="vertical" > 

<ImageView 
    android:id="@+id/imageView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" 
    android:layout_marginLeft="2dp" 
    android:src="@drawable/facebook" /> 

<TextView 
    android:id="@+id/textView3" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentRight="true" 
    android:layout_centerHorizontal="true" 
    android:text="30" 
    android:drawablePadding="10dp" 
    android:gravity="center" 
    android:drawableTop="@drawable/valoracion" 
    android:textAppearance="?android:attr/textAppearanceSmall" /> 

<TextView 
    android:id="@+id/textView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_centerHorizontal="true" 
    android:layout_centerVertical="true" 
    android:lines="2" 
    android:text="Large Text" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:layout_toRightOf="@id/imageView1" 
    /> 

</RelativeLayout> 
+0

謝謝,我認爲這是最好的答案。 – mvasco

1

帶走

android:layout_centerHorizontal="true" 

的 「下面」 是不錯的。然後使用

android:layout_toLeftOf="@id/imageView2" 
android:layout_marginLeft="xxdp" 

設置邊距,直到看起來正確。

+0

謝謝你,它可以作爲你建議,但我想從AndroidGuy答案是第一個,是與你的非常相似,並且還提出了對代碼的改進。非常感謝您的時間和精力。 – mvasco

1

試試這個..

刪除android:layout_centerHorizontal="true"添加android:layout_alignParentRight="true"並給予android:layout_marginRight="15dp"textView3TextView

<TextView 
    android:id="@+id/textView3" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/imageView2" 
    android:layout_alignParentRight="true" 
    android:layout_marginRight="15dp" 
    android:text="30" 
    android:textAppearance="?android:attr/textAppearanceSmall" /> 
+0

謝謝你,它按照你的建議工作,但我想AndroidGuy的答案是第一個,它與你的答案非常相似。非常感謝您的時間和精力。 – mvasco

2

刪除此行

android:layout_centerHorizontal="true" 

,並添加

android:layout_alignParentRight="true" 

,你是好去

+0

謝謝,但使用您的建議,textview放在圖像下方但不居中,現在看起來與右側對齊。 – mvasco

+0

對不起,我沒有讀你的完整的問題,AndroidGuy是正確的,你應該使用android:drawableTop =「」或者你可以把圖像和文字「30」在linearlayout(垂直),然後居中文本:) –