¿Cómo inserto caracteres en el medio de un campo EditText?
Estoy haciendo una calculadora que puede tomar una expresión de cadena como "3 * (10^2-8)". Estoy usando un campo EditarTexto para hacer la cadena usando XML, así:Android EditText inserting
EditarTexto
android:id="@+id/entry"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/label"
android:text="@string/testString1"
android:background="@android:drawable/editbox_background"
y luego en mi actividad Tengo, por ejemplo:
entry = (EditText)findViewById(R.id.entry);
entry.setText("blablahblah");
entry.setSelection(3);
Ahora tengo una EditarTexto campo con el cursor parpadeando después del tercer carácter en la cadena. ¿Cómo inserto un personaje allí, entonces dice correctamente "blahblahblah"?
Gracias Jan-Henk. No entendí que implementa la interfaz Editbale, así que no verifiqué allí. Esto es lo que estoy usando. De esta manera, puedo usar cualquier punto de inserción que ya esté seleccionado. Entrada editableE1 = entry.getText(); entryE1.insert (entry.getSelectionStart(), "1"); Parece que funciona muy bien. –
Actualicé mi respuesta con el método getSelectionStart() que mencionaste. –
¡Es realmente excelente! – Sakthimuthiah