Tengo el mismo problema. Después de obtener la cadena del campo editText, encuentro el carácter "obj" y luego lo reemplazo por el enlace de la imagen. Creé una ArrayList para almacenar los enlaces de las imágenes. Y, además, creo que necesito atrapar la acción de eliminación. Si se elimina una imagen, eliminé su enlace en la lista de imágenes. A continuación se muestra el código que utilizo para reemplazar el carácter "obj".
private String replaceSpecialCharactorFromNote(){
String noteString = edt_note.getText().toString();
char[] noteCharacters = noteString.toCharArray();
for(int i=0; i<noteCharacters.length; i++){
if((int)noteCharacters[i] <1 || (int)noteCharacters[i]>254){//compare the ascii code
Log.i("the first abnormal charactor is ", "" + noteCharacters[i]);
if(imageIndex < imgsList.size()){
Log.i("replace triggered", "special char index is "+i);
Log.i("replace triggered", "replaced image index is "+imageIndex);
Log.i("replace triggered", "image is "+imgsList.get(imageIndex));
String beforeString = noteString.substring(0, i);
String afterString = noteString.substring(i+1);
noteString = beforeString + imgsList.get(imageIndex) + afterString;
Log.i("replace triggered", "note is "+noteString);
}
imageIndex++;
}
}
return noteString;
}
En general, no creo que la forma en que lo hice es la mejor manera de resolver el problema. La mejor manera probablemente será crear un campo personalizado para manejarlo.
tengo el mismo problema en edittext ¿ha resuelto este problema? –