2012-03-22 2 views
2

필자는 필 요한만큼 많은 열 내에 표시되기 위해 긴 텍스트를 분할해야합니다. 예를 들어 나는 80 줄짜리 텍스트를 가지고 있는데, 두 줄의 textview 내에서 그것을 보여주고 싶다. 그리고 다른 하나 옆에 큰 쪽을 넣고 싶다. 최대 값은 60이다.Android - 열의 텍스트 분할

답변

3

나는이 오래된 질문 알지만, 비록 ... 아마 여기보고 있습니다 당신이 첫번째 텍스트 뷰에 텍스트를 표시해야 http://www.accella.net/multi-column-text-displays-in-android/

, 그 다음에 나타나지 않는 것을 얻기를 첫 번째 textview를 누른 다음 두 번째 textview에 표시합니다. 텍스트 뷰에서 '보이지 않는'텍스트를 얻으려면 다음 코드를 사용하십시오.

private String getInvisibleText(final TextView textView) { 
    String invisible = null; 
    int height = textView.getHeight(); 
    int scrollY = textView.getScrollY(); 
    Layout staticLayout = textView.getLayout(); 

    int lastVisibleLineNumber = staticLayout.getLineForVertical(scrollY+height); 
    int start = staticLayout.getLineEnd(lastVisibleLineNumber); 
    int end = staticLayout.getLineEnd(textView.getLineCount()-1); 

    if (textView.getText().toString() != null 
      && !textView.getText().toString().isEmpty() 
      && end > 0 
      && textView.getText().toString().length() >= end) { 
     invisible = textView.getText().toString().substring(start, end);  
    } 
    return invisible; 
} 
+0

멋진 팁! 앞으로 유용 할 수 있습니다! 감사! –

+0

초기 문제를 털어 놓을 수 있습니까? 다른 방법으로 작동시킬 수 있습니까? (나는 또한 더 좋은 방법을 찾고있다.) – Rocel