2012-07-17 2 views
0

큰 문자열이 있기 때문에 분할하려고합니다. 나는 아래 코드를 사용하여 화면 너비와 높이를 얻었습니다.전체 화면에 표시 할 수있는 문자열의 수는 많습니다.

DisplayMetrics metrics = new DisplayMetrics(); 
activity.getWindowManager().getDefaultDisplay().getMetrics(metrics); 

screenHeight = metrics.heightPixels; 
screenWidth = metrics.widthPixels; 

화면에 표시 할 문자 수를 알고 싶습니다.

계산 방법은? 문자열을 나눕니다.?

답변

1

Swing/AWT Java 플랫폼에서는 FontMetrics 개체를 사용하여 표시하려는 특정 문자의 너비를 측정 할 수 있습니다.

참고 :

하지만 아마 당신을 위해 렌더링 캐릭터의 관심과 포장을 할 수있는 무언가를 사용하는 것이 더 간단 할 것이다.

Android 플랫폼에서 Paint 클래스에는 이러한 종류의 작업을 수행하는 데 도움이되는 여러 가지 방법이 있습니다.

0

String substring(int startIndex, int endIndex)

이 줄에 문자열을 분할 문자열 방법을 사용하고 저장할 문자열

의 배열에
String originalString=" ....some long text " ; 
String stringsByLine[]= new String(screenHeight); 
int i,j=0; 
for (i = 0; j<originalString.length;i++,j++){ 
    stringsByLine[i]=originalString.substring(j,j+screenWidth); 
    j+=screenWidth; 
} 

havent 한이 그것을 자신을 시도했지만이 논리가 작동합니다. :-)

0

문자열 속성보다 wrapcontent에 width 속성을 설정하면 다음 줄에 자동으로 분할되어 표시됩니다.

사용이 속성

android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
관련 문제