Java (Android): Как масштабировать выделение без растрового изображения?

Мне нужно масштабировать фоновое изображение кнопки, но не могу превратить ее в растровое изображение. Вот код прямо сейчас:

int height = 50; int width = 80; Button b = new Button (this); b. setBackgroundResource(R.drawable.btn); 

Теперь мне нужно масштабировать «R.drawable.btn» в соответствии с «высотой» и «шириной». SetBackgroundResource не принимает битмап. Как мне это сделать?

Спасибо.

Вы можете позволить параметрам макета управлять масштабом, или вы можете масштабировать изображение самостоятельно.

Разрешить макету масштабировать изображение:

 b.setBackground(getResources().getDrawable(R.drawable.btn)); 

Масштабируйте изображение вручную:

 Bitmap original = BitmapFactory.decodeResource(context.getResources(), R.drawable.btn); Bitmap b = Bitmap.createScaledBitmap(original, width, height, false); Drawable d = new BitmapDrawable(context.getResources(), b); button.setBackground(d); 

Предупреждение . Изображение не может отображаться на экране, точно так, как вы ожидаете. Это связано с тем, что в зависимости от параметров компоновки вашей Button Android может дополнительно масштабировать изображение на основе плотности экрана вашего устройства.

Это превратит растровое изображение в растягиваемое

 image = new BitmapDrawable(getResources(),MenuScreen.image1); 

Изображение является drawable, а image1 – растровым изображением

Intereting Posts
Отправка данных на сервер через почту при возврате интернет-соединения Галерея и полноэкранный ImageView, проблема с их объединением Удаление объекта при столкновении Intent FLAG_GRANT_READ_URI_PERMISSION Использование FileProvider в Gingerbread Лучший способ разрешить пользователям доступ к вашему приложению с помощью учетных данных Google Получение определенных данных из FireBase (Android) Android: преобразование стандартного XML в Android Бинарный XML-формат (AXML) Канонический идентификатор регистрации и формат идентификатора сообщения Как использовать базу данных firebase извещателя трансляции Смутно о togglesoftinput функции Панель доступа (и ее дочерние элементы) из фрагмента? Использует ли Android пользовательскую систему окон? Проблемы с UI в конвертированных приложениях для Android на платформу BlackBerry NavigationView как обрабатывать динамический контент заголовка Hunspell на Android