Intereting Posts
Как сделать некоторые элементы списка без кликов? Как изменить программные переменные xml-значений в Android? Как обернуть просмотры контента, а не фоновые? Точки останова не работают во время отладки собственной библиотеки Android в Visual Studio 2015 Как завершить работу из класса адаптера ListView? Android sim pin разблокировать программно Проблемы с Android-темами, в которых реализовано самое простое: пользовательский цвет для каждой темы Тестирование Android: запуск инструментария завершился неудачно из-за «java.lang.ClassNotFoundException» Как получить Logcat для нескольких устройств, работающих одновременно в Eclipse Какой уровень API для использования с поддержкой библиотеки Android? Принудительный просмотр для перерисовки ShowAsAction = "ifRoom" не отображает элемент, даже когда есть много места Есть ли альтернатива JQuery для JQTouch с лучшей поддержкой Android? Вызывается Camera2 API onCaptureComplete (), но состояние камеры по-прежнему CONTROL_AE_STATE_PRECAPTURE Изменить шрифт для подсказки editText

Установите динамический фон 9patch

Кто-нибудь пытался установить динамический фон кнопки 9Patch? Если это важно, ширина и высота кнопки устанавливаются wrap_content

Если да, то как вы решили проблему «черной линии»?

благодаря

Solutions Collecting From Web of "Установите динамический фон 9patch"

Если вы видите черные точки, которые вы нарисовали на 9-патч-изображении, это связано с тем, что вы не предварительно скомпилировали свои изображения.

Чтобы установить 9-патч-изображения в качестве фона во время выполнения, они должны быть предварительно скомпилированы, когда граница будет удалена и закодирована в блок PNG.

Это можно сделать, вставив изображения .9.png в папку res/drawable вашего приложения, скомпилировав его и создав .apk (в Eclipse, щелкните правой кнопкой мыши по project root > Android Tools > Export Unsigned Application Package ). Затем разархивируйте .apk, и у вас будут изображения .9.png с 9-патч-скомпилированными данными в них.

С вашими предварительно скомпилированными изображениями с 9 патчами сделайте что-нибудь подобное для загрузки изображения:

 private Drawable loadNinePatch(String path, Context context) { Bitmap bitmap = BitmapFactory.decodeFile(path); byte[] chunk = bitmap.getNinePatchChunk(); if(NinePatch.isNinePatchChunk(chunk)) { return new NinePatchDrawable(context.getResources(), bitmap, chunk, new Rect(), null); } else return new BitmapDrawable(bitmap); } 

И затем установите его в качестве фона вашей кнопки:

 button.setBackgroundDrawable(loadNinePatch("/data/data/your.app/files/button_background.9.png", context));