Может кто-либо говорить мне, как изменить размер imageButton
соответствовать изображению точно? Это - код, который я попробовал, но изображение помещается в положение, что я определяю местоположение использования android:scaleType
, но я не могу уменьшить размер imageButton
. Выручите меня в исправлении этой проблемы. Код, который я попробовал:
<ImageButton>
android:id="@+id/Button01"
android:scaleType="fitXY" // i have tried all the values for this attr
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:cropToPadding="false"
android:paddingLeft="10dp"
android:src="@drawable/eye"> // this is the image(eye)
</ImageButton>
Вероятно, вам придется изменить размер кнопки программно. Вам нужно будет явно загрузить изображение в метод onCreate() и изменить размер кнопки там:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ImageButton myButton = (ImageButton) findViewById(R.id.button);
Bitmap image = BitmapFactory.decodeResource(R.drawable.eye);
myButton.setBitmap(image);
myButton.setMinimumWidth(image.getWidth());
myButton.setMinimumHeight(image.getHeight());
...
}
Это не гарантирует работу, согласно спецификациям для setMinimumX (поскольку ширина и высота все еще зависят от родительского представления), но это должно работать довольно хорошо почти для любой ситуации.
вы устанавливаете изображение с помощью свойства "src"
android:src="@drawable/eye">
используйте свойство "background
" вместо свойства "src
":
android:background="@drawable/eye"
как:
<ImageButton
android:id="@+id/Button01"
android:scaleType="fitXY"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:cropToPadding="false"
android:paddingLeft="10dp"
android:background="@drawable/eye"> // this is the image(eye)
</ImageButton>