머리말
내가 쓴 안드로이드 응용 프로그램은 게시물이 표현식에 삽입되면 버그가 있습니다. 텍스트의 끝. APK 소스 코드를 분석 한 후, 이모티콘의 Onclick 응답 이벤트에서 이모티콘 문자열 추가 메소드가 올바르게 처리되지 않았다는 것을 알았습니다.
EditText 커서에 이모티콘 문자열을 삽입하는 방법
EditText 컨트롤에 Emoticon 문자열이 삽입되므로 EditText 컨트롤 객체가 먼저 필요합니다.
editText reditText = (editText) findViewById (r.id.r_edittext);
현재 edittext 컨트롤 객체를 가져옵니다.
String oricontent = redittext.getText ();
다음으로 커서의 위치를 얻는 것입니다. edittext 컨트롤에서 제공 한 getSelectionStart () 메소드를 사용하십시오. 그러나 여기에서 edittext에 커서가 없으면이 메소드는 우리가 원하는 커서의 위치가 아니므로 0과 비교하는 것이 가장 좋습니다. 다음과 같이 :
int index = math.max (redittext.getSelectionStart (), 0);
나머지는 주어진 커서 위치에 이모티콘 문자열을 삽입 한 다음 새 커서 위치를 설정하는 것입니다. 완전한 삽입 이모티콘의 소스 코드는 다음과 같습니다.
개인 void insertemotion (string insertemotion) {string redittext.getText (); sbuilder.tostring ());