Hình ảnh không được hiển thị vì bạn không chỉ định giới hạn, vì vậy bạn có 2 tùy chọn ở đây.
Phương pháp 1
Sử dụng setCompoundDrawablesWithIntrinsicBounds
phương pháp, như hình dưới đây
Drawable myDrawable = getResources().getDrawable(R.drawable.btn);
btn. setCompoundDrawablesWithIntrinsicBounds(myDrawable, null, null, null);
Phương pháp 2
Bạn có thể áp dụng giới hạn cho drawable trước khi áp dụng cho TextView, như hiển thị bên dưới
Drawable myDrawable = getResources().getDrawable(R.drawable.btn);
myDrawable.setBounds( 0, 0, myDrawable.getIntrinsicWidth(), myDrawable.getIntrinsicHeight());
btn.setCompoundDrawables(myDrawable, null, null, null);
Đó là nó.
(..)WithIntrinsicBounds
cần được gọi. Bên cạnh đó,padding
đối với Hợp chất có thể rút được phải được đặt sau lệnh gọi này để gây hiệu ứng