Tôi có nút định nghĩa như sau:Làm cách nào để căn giữa drawableTop và văn bản theo chiều dọc trên Nút trong Android?
<Button
android:drawableTop="@drawable/ico"
android:gravity="center"
android:id="@+id/StartButton2x2"
android:text="@string/Widget2x2StartBtnLabel"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@drawable/widgetbtn_bg"
/>
Vấn đề là hình ảnh 'drawableTop' được liên kết đến biên giới trên của quan điểm nút. Tôi muốn căn giữa nó (cùng với nhãn văn bản) theo chiều dọc trên nút.
'android: gravity' dường như chỉ hoạt động trên nhãn văn bản. Nó không ảnh hưởng đến vị trí 'drawableTop'.
Tôi đã có thể căn giữa theo chiều dọc bằng cách sử dụng 'android: paddingTop' - nhưng điều đó dường như không phải là một ý tưởng hay. Tôi đoán nó sẽ không hoạt động đúng trên độ phân giải/kích thước màn hình khác nhau.
drawableTop, như tên gọi của nó, luôn căn chỉnh mức có thể kéo lên đầu nút. Hãy thử drawableLeft thay vào đó, hoặc nếu bạn muốn nó đằng sau văn bản, android: background. –