me encontré con el mismo problema. Me pregunto que no es un problema común, hay muy pocos resultados de búsqueda con respecto a esto en la red.
Parece que no es posible mostrar EditTextPreference manualmente desde el código, aunque hay una solución obvia.
Puede lograr el mismo aspecto y comportamiento creando un cuadro de diálogo de alerta y manejando el evento onclickevent del botón OK.
Esto es código general simple para un diálogo de entrada de texto:
public static EditText showInputDialog(Context context, OnClickListener clickListener, String message)
{
LayoutInflater factory = LayoutInflater.from(context);
final View textEntryView = factory.inflate(R.layout.dialogedittext, null);
final EditText editText = (EditText)textEntryView.findViewById(id.dialogEditText);
final AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder
.setTitle(message)
.setView(textEntryView)
.setPositiveButton("OK", clickListener)
.setNegativeButton("Cancel", null).show();
return editText;
}
sólo tiene que pasar en un OnClickListener y manejar los ajustes de preferencias allí. No olvides establecer una variable EditText para recibir la cadena de entrada que el usuario ingresó.
Espero que ayude a ahorrar tiempo a las personas que buscan este problema.
la mejor respuesta de la historia :) muchas gracias :) – cV2
Me aparece una pila 'BadTokenException: no se puede agregar window' a veces. ¿Alguna idea de por qué? – theblang
Parece suceder cuando dejo 'PreferenceActivity 'y luego regreso. ¿Supongo que algo está apagado con el 'contexto' tal vez? – theblang