2017-05-05 1 views
0

에서 분리 된 텍스트를 선택 나는 AppCompatEditText에서 확장 된 사용자 정의 Edittext을 가지고 있고 사용자가 텍스트의 어떤 부분에 한 번를 클릭하면 그것은 "10.02.2012 10:40" 같은 날짜 텍스트를 보여줍니다 부분이 자동으로 선택해야합니다. 예를 들어동적 글고

:

enter image description here enter image description here

는 그것을하려면 내 사용자 지정 글고 치기에, 나는 onSelectonChange

@Override 
    protected void onSelectionChanged(int selStart, int selEnd) { 

     if (isFocused() && isCursorVisible() && isPressed()) { 
      int[] aFoo = findPartOfText(selStart, selEnd); 
      selStart = aFoo [0]; 
      selEnd = aFoo [1]; 
     } 

     super.onSelectionChanged(selStart, selEnd); 

    } 

그것은 아무것도 변경되지 않습니다를 무효화한다. 나는 또한 이것을 시도했다 :

@Override 
     protected void onSelectionChanged(int selStart, int selEnd) { 
      //Select first 3 characters 
      super.onSelectionChanged(0, 2); 

     } 

결과는 동일합니다. 처음 세 문자도 선택하지 않습니다.

+0

이 작업은 onClickListener 또는 OnFocusChangedListener를 사용하여 수행 할 수 있습니다. 여기 링크가 있습니다 [링크] (http://stackoverflow.com/questions/9128297/how-to-dynamically-select-text-from-edittext-onclicklistener) –

답변

0

EditText.setSelection (int start, int end)을 시도해보십시오. onSelectionChanged가 호출되면 커서 위치 또는 선택을 확인하고 setSelection을 호출하여 변경합니다.

+0

setSelection은 onSelectionChanged 메서드를 이미 호출합니다. 따라서 onSelectionChanged에서 setSelection 메서드를 호출하면 의미가 없습니다. 참고 : 나는 또한 전에 당신의 방법을 시도했다. – ziLk

+0

onSelectionChanged에서 선택 범위를 확인하십시오. 범위가 원하는 것이 아닌 경우에만 setSelection을 호출하십시오. – jarly