Come inserire caratteri nel mezzo di un campo Modifica testo?
Sto facendo una calcolatrice che può prendere un'espressione di stringa come "3 * (10^2-8)". Sto usando un campo EditText per rendere la stringa utilizzando XML in questo modo:Android EditText inserimento
EditText
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"
e poi nella mia attività ho, diciamo:
entry = (EditText)findViewById(R.id.entry);
entry.setText("blablahblah");
entry.setSelection(3);
ora ho un EditText campo con il cursore che lampeggia dopo il terzo carattere nella stringa. Come inserisco un personaggio lì, quindi dice correttamente "blahblahblah"?
Grazie Jan-Henk. Non ho capito che implementa l'interfaccia di Editbale quindi non ho controllato lì. Ecco cosa sto usando. In questo modo posso semplicemente usare qualsiasi punto di inserimento è già selezionato. Editable entryE1 = entry.getText(); entryE1.insert (entry.getSelectionStart(), "1"); Sembra funzionare alla grande. –
Ho aggiornato la mia risposta con il metodo getSelectionStart() che hai citato. –
È davvero fantastico! – Sakthimuthiah