728x90
반응형
텍스트 뷰에서 개행문자 '\n' 로만 줄이 바꾸면 split 이나 indexOf 로도 대략 유추할수 있겠지만.
대부분 멀티라인 텍스트뷰는 word-wrap에 의해서 줄이 바뀌는 만큼.
두번째 줄의 문자열.... 을 가져오려고 하면 막막하더라.
그러던 차에. 요런 트릭 (?? 사실 그냥 메소드 ㅋㅋㅋ) 을 배웠다.
TextView tvTest = findViewById(R.id.textview_test);
// XML 에서나, setText 호출을 통해서 여러줄의 텍스트를 입력 했다 치고.
int lineIndex = 1; // 첫번째 줄은 0 번 인텍스부터다. 즉, 1은 두번째 줄.
int beginIndex = tvTest.getLayout().getLineStart(lineIndex);
int endIndex = tvTest.getLayout().getLineEnd(lineIndex); // 사실 getLindeEnd(int line) 은 내부적으로 getLineStart(line +1) 을 호출하고 있더라.
// 즉 int endIndex = tvTest.getLayout().getLineStart(lineIndex+1) 과 완전히 동일하다.
String target = tvTest.getText().toString().substring(beginIndex, endIndex);
이렇게 target 문자열을 득 했다!!!!
728x90
반응형
'공부하는 하스씨 > 안드로이드' 카테고리의 다른 글
Rounded Imageview 만들어볼까? (0) | 2019.04.22 |
---|---|
베가시크릿노트A890 부활... LineageOS 14.1 커스텀롬 올리기... (2) | 2018.10.18 |
화면 관련한 상수들을 가져오는 코드 (0) | 2017.10.31 |
지긋지긋한 버전 충돌... 망할 구글 (0) | 2017.10.18 |
최신 안드로이드 스튜디오. 레이아웃 프리뷰 화면에 한글이 깨지는 경우. (0) | 2017.02.20 |