convertir mapa de bits en ninepatch para utilizar como fondo

Tengo un problema en el que me he quedado estancado durante unos días. Estoy tratando de convertir una imagen de nueve parches en una matriz de mapa de bits y cambiar un color específico a otro diferente. Tengo problemas para volver a convertir el mapa de bits en un parche nueve, por lo que puedo usarlo como fondo para un diseño. He intentado usar este código para crear el mapa de bits y luego volver a convertirlo en un dibujo de nueve parches, pero solo inicia la actividad y parpadea en negro, luego vuelve a la actividad principal. Si comento la creación e inicialización de los nueve parches, la actividad comienza bien.

 Bitmap backMap = BitmapFactory.decodeResource(getResources(),R.drawable.outerbackground);
 backMap = backMap.copy(Bitmap.Config.ARGB_8888, true);
 backMap = getChangedColor(backMap, Color.rgb(212, 212, 212), Color.rgb(55, 50, 255));

 byte[] chunk = backMap.getNinePatchChunk();
 NinePatchDrawable np_drawable = new NinePatchDrawable(getResources(), backMap, chunk, new Rect(), null);
 np_drawable.setBounds(0, 0, backMap.getWidth(), backMap.getHeight());

Por lo general, no pido ayuda para tal cosa, pero he revisado toda la documentación que pude encontrar en imágenes de nueve parches y mapas de bits y aún no puedo resolverlo.

Pregunta larga, breve, necesito saber cómo convertir un mapa de bits en una imagen de nueve parches para usar como fondo. Un millón de gracias por adelantado. obtendrá el otro millón después de su hecho.

O y estoy apuntando a la versión 16 con el mínimo de 8.

Respuestas a la pregunta(0)

Su respuesta a la pregunta