Khi sử dụng hình ảnh 9-bit làm nền, phần đệm dường như luôn xuất phát từ hình ảnh 9 bản vá. Ngay cả khi bạn không sử dụng thanh đệm trong hình ảnh bản vá 9 thì nó vẫn có thể sử dụng được.Android Ghi đè phần đệm 9-bit trong XML của một bên
Nếu không có dòng đệm, Android sử dụng các dòng bên trái và trên cùng để xác định khu vực có thể vẽ này.
http://developer.android.com/guide/topics/graphics/2d-graphics.html#nine-patch
Tuy nhiên bạn có thể ghi đè lên nó trong XML bằng cách sử dụng android: đệm = 0dp hoặc = XDP. Thật không may khi sử dụng android: paddingLeft = Xdp không hoạt động. Vì vậy, bạn đang mắc kẹt với đệm thống nhất. Tôi đã cố gắng làm điều này:
android:padding="2dp"
android:paddingLeft="20dp"
Nó không hề ảnh hưởng đến đệm bên trái. Đặt chúng trong một styles.xml tạo ra các kết quả tương tự.
Hack duy nhất tôi đã thấy để giải quyết vấn đề này là đặt mã đệm vào mã.
Cảm ơn, tôi nghĩ rằng các kiểu thiết lập sẽ hoạt động như CSS. Điều này giải quyết được vấn đề. Dẫn đầu về câu hỏi nhưng nếu tôi sử dụng view.setBackgroundResource (9patch_background); Việc ghi đè 9patch_background tập hợp đệm thông qua XML là có một cách để thiết lập nền mà không cần đệm trọng trong XML. – pt123
bạn sẽ nhận được giá trị đệm, đặt nền, đặt giá trị đệm cũ trở lại. – Leonidos