2012-02-01 15 views
17

Chciałbym zmniejszyć odstępy między wierszami tekstu (User12, 5 filmów, poprawione o 2,5%) w załączonym układzie.Jak zmniejszyć odstępy między wierszami tekstu w układzie Android?

enter image description here

Oto poniżej xml (próbowałem usunięcie SingleLine = "true" oświadczenie i próbował ustawienie go na false):

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="?android:attr/listPreferredItemHeight" 
    android:orientation="horizontal" > 

    <ImageView 
    android:id="@+id/icon" 
    android:src="@drawable/icon" 
    android:layout_width="36dip" 
    android:layout_height="36dip" 
    android:layout_margin="5dip" 
    android:scaleType="center" 
    android:layout_gravity="center_vertical" /> 

    <LinearLayout 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_weight="7.5"> 
    <TextView 
     android:id="@+id/scoreDesc" 
     android:text="User12" 
     android:layout_marginLeft="5dip" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:textAppearance="@android:style/TextAppearance.Small" 
     android:singleLine="true" 
     android:ellipsize="marquee" 
     android:layout_weight="1" 
     android:layout_gravity="center_vertical" /> 
    <TextView 
     android:id="@+id/scoreDesc" 
     android:text="5 movies" 
     android:layout_marginLeft="5dip" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:textAppearance="@android:style/TextAppearance.Small" 
     android:singleLine="true" 
     android:ellipsize="marquee" 
     android:layout_weight="1" 
     android:layout_gravity="center_vertical" /> 

    <TextView 
     android:id="@+id/scoreDesc" 
     android:text="2.5% improved" 
     android:layout_marginLeft="5dip" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:textAppearance="@android:style/TextAppearance.Small" 
     android:singleLine="true" 
     android:ellipsize="marquee" 
     android:layout_weight="1" 
     android:layout_gravity="center_vertical" /> 
    </LinearLayout> 
    <TextView 
    android:id="@+id/scoreNum" 
    android:text="32" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent" 
    android:gravity="center" 
    android:textSize="20sp" 
    android:textStyle="bold" 
    android:paddingLeft="10dip" 
    android:paddingRight="60dip" 
    /> 

</LinearLayout> 

Odpowiedz

55

dawno padło pytanie, ale jeśli ktoś potrzebuje odpowiedź w przyszłości może to być osiągnięte po prostu przekazując wartość ujemną do

android: lineSpacingExtra = „- 4DP”

+1

Pytanie oznacza między każdym elementem w LinearLayout. Ten działa tylko z TextView. Zobacz moją odpowiedź poniżej. –

+4

Ujemna wartość obniżyć poniżej znaków, takich jak "g" zostanie wycięta z dołu. –

5

Jak Cullan mówi powyżej, trzeba umieścić wartość ujemną margin:

android: layout_marginTop = "- 10dp"

<TextView 
    android:id="@+id/scoreDesc" 
    android:text="User12" 
    android:layout_marginLeft="5dip" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:textAppearance="@android:style/TextAppearance.Small" 
    android:singleLine="true" 
    android:ellipsize="marquee" 
    android:layout_weight="1" 
    android:layout_gravity="center_vertical" /> 
<TextView 
    android:id="@+id/scoreDesc" 
    android:text="5 movies" 
    android:layout_marginLeft="5dip" 
    android:layout_marginTop="-10dp" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:textAppearance="@android:style/TextAppearance.Small" 
    android:singleLine="true" 
    android:ellipsize="marquee" 
    android:layout_weight="1" 
    android:layout_gravity="center_vertical" /> 

Hope this helps kogoś.