Как я могу получить и установить размер ImageButton программно? Android, похоже, делает размер кнопки больше, чем размер изображения. Возможно, я ошибаюсь. Я хочу сделать его того же размера, что и размер изображения.Как получить и установить размер ImageButton?
ответ
попытаться установить отступы для 0dp в макете XML:
<ImageButton ...
android:padding="0dp" />
Изображение должно быть как кнопки. Если вы хотите кнопку (но не изображение) прозрачного набор кнопки цвета фона, чтобы сделать на @null:
<ImageButton ...
android:background="@null" />
Спасибо. Но это не работает. Я написал еще один вопрос в http://stackoverflow.com/questions/10283760/how-to-place-imagebutton-at-x-y-location – user1301568
int height = button.getLayoutParams().height;
int width = button.getLayoutParams().width;
button.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT));
Спасибо. Но это не работает. Я написал еще один вопрос в http://stackoverflow.com/questions/10283760/how-to-place-imagebutton-at-x-y-location – user1301568
Чтобы программно получить высоту и ширину:
ViewGroup.LayoutParams layoutParams = mImageButton.getLayoutParams();
int height = layoutParams.height;
int width = layoutParams.width;
Чтобы программно установить высота и ширина:
int myHeight = ContextCompat.getDrawable(getContext(), R.drawable.myImageAsset).getIntrinsicHeight();
/*any desired height, but for OP's sake ^^*/
int myWidth = ContextCompat.getDrawable(getContext(), R.drawable.myImageAsset).getIntrinsicWidth();
/*any desired width, but for OP's sake ^^*/
ViewGroup.LayoutParams layoutParams = mImageButton.getLayoutParams();
layoutParams.height = myHeight;
layoutParams.width = myWidth;
mImageButton.setLayoutParams(layoutParams);
Что касается использования 'wrap_content' для макета высоты и ширины? –