2013-12-24 53 views
0

我有一個佈局,其中有3 TextView's,一個用於標題,一個用於日期,一個用於站點名稱。我希望標題高於日期和網站,並且網站要與日期保持一致。Textview的不匹配

出於某種原因,該網站TextView比日高一點,我想不通爲什麼:

enter image description here

這是我使用的佈局代碼:

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@color/browser_bg" 
    android:orientation="vertical"> 
     <ScrollView 
      android:id="@+id/webview" 
      android:layout_width="fill_parent" 
      android:layout_height="0dip" 
      android:layout_weight="1" 
      android:paddingTop="10dp" 
      android:paddingLeft="15dp" 
      android:paddingRight="15dp" 
      android:paddingBottom="10dp" 
      > 
      <RelativeLayout 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:padding="10dip" 
       android:orientation="horizontal" 
       >  
       <TextView 
        android:id="@+id/title" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:textSize="18sp" 
        android:textStyle="bold" 
       /> 
       <TextView 
        android:id="@+id/date" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:textSize="13sp" 
        android:textStyle="italic" 
        android:paddingTop="5dp" 
        android:layout_below="@id/title" 
        android:layout_alignParentLeft="true" 
       /> 
       <TextView 
        android:id="@+id/site" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:textSize="13sp" 
        android:gravity="right" 
        android:layout_alignParentRight="true" 
        android:layout_below="@id/title" 
       /> 
      </RelativeLayout> 
     </ScrollView> 
</LinearLayout> 
+1

嘗試在網站上使用alignbaselign的TextView layout_alignBaseline [1] [1]:http://stackoverflow.com/a/6447423/569938 – Prachur

+0

使用'安卓layout_alignBaseline'了它的工作。謝謝! –

回答

0

裹有RelativeLayout

日期與本站觀點充分利用RelativeLayoutandroid:layout_alignParentBottom="true"android:gravity="center_vertical"

像:

<RelativeLayout 
    android:id="@id/bottom_row_container" 
    android:layout_width="match_parent" 
    android:layout_height="@dimen/SOME_NUMBER" 
    android:layout_alignParentBottom="true" 
    android:gravity="center_vertical" > 
+1

如果您嘗試將字體與不同的內部底部「填充」對齊,則此方法可能不起作用。請參閱@Prachur關於使用layout_alignBaseline標籤的更多健壯答案的評論。 – TheIT

0

TextViews自動擁有一些神奇的保證金加入到頂部和底部。真正解決它的唯一方法是用負邊距抵消它,但問題在於它取決於字體大小。你也可以做android:includeFontPadding="false",這應該會有很大的幫助。