2013-04-26 44 views
20

A CompoundDrawable là TextView có hình ảnh và văn bản phải không? Vì vậy, nếu đó là một sự kết hợp của hai, làm thế nào bạn có thể đặt văn bản ở trung tâm đối với hình ảnh? Hoặc làm thế nào bạn có thể đặt hình ảnh ở trung tâm đối với văn bản nếu văn bản nhỏ hơn một chút so với hình ảnh? Hoặc nếu hình ảnh nhỏ hơn văn bản thì sao? Làm thế nào tôi có thể bao gồm các kịch bản này bằng cách sử dụng XML?Làm cách nào để căn giữa văn bản và hình ảnh trong CompoundDrawable?

Dưới đây là một ví dụ về một CompoundDrawable:

<TextView 
    android:id="@+id/image" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:drawableTop="@drawable/image" 
    android:text="@string/text" /> 

Trả lời

38

Thêm android:gravity="center" để TextView của mình.

+0

nó đã xin lỗi về điều đó cảm ơn you.one hơn làm thế nào tôi có thể đặt các văn bản trên bên của hình ảnh hoặc ngược lại? – Giant

+2

@HakHak, sử dụng android: drawableLeft, android: drawableRight, v.v. để đặt hình ảnh ở nơi khác. – andyandy

1
<TextView 
    android:id="@+id/filterView" 
    android:layout_width="200dp" 
    android:layout_height="wrap_content" 
    android:gravity="center" 
    android:background="@drawable/background_card" 
    android:text="Offers" 
    android:drawableLeft="@drawable/small_badge_dollar" 
    android:drawablePadding="-20dp" 
    android:paddingLeft="20dp" 
    android:textColor="@color/offers_color"`enter code here` 
    android:textSize="25sp" 
    android:textStyle="bold" /> 
+0

Chơi xung quanh android: drawablePadding = "- 20dp" android: paddingLeft = "20dp" – yesh

1
cool stuff with android:drawablePadding="-20dp" android:paddingLeft="20dp" 

    <Button 
     android:id="@+id/btn_pre" 
     style="?android:buttonBarStyle" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:layout_marginRight="1dp" 
     android:layout_weight="1" 
     android:background="@color/bottom_tab" 
     android:contentDescription="@string/image_view" 
     android:drawableLeft="@drawable/prev" 
     android:drawablePadding="-20dp" 
     android:onClick="navigateStaticPages" 
     android:paddingLeft="20dp" 
     android:text="@string/pre" 
     android:textColor="#000" 
     android:textSize="@dimen/login_textSize" /> 
+0

một câu hỏi là một phương pháp hay để đặt giá trị âm lên đệm? Nó có vẽ lại không? – Giant

+1

Tôi đang sử dụng bố cục của mình, tôi không thấy bất kỳ hạn chế nào. phụ thuộc vào yêu cầu của bạn. –

+0

Nhưng nếu textview của tôi là phù hợp với cha mẹ (0dp) sau đó? – Subho

Các vấn đề liên quan