2013-01-19 2 views
0

textsize를 변경할 때 TextView를 중심으로 유지하기 위해 검색을 다 써 버렸습니다.android sdk TextView를 동적 텍스트 세트의 중심에 두는 방법

이 사이트에는 많은 비슷한 질문이 있지만, 어떤 문제도 내 문제에 대한 해결책을 제공하지 못합니다.

내 XML 파일에는 RelativeLayout 및 TextView가 있습니다 (아래 코드).

TextView의 텍스트 크기를 1 -> 300으로 변경 한 다음 프로그래밍 방식으로 300 -> 1에서 다시 변경하면 TextView의 위치가 변경되어 화면 하단으로 이동합니다.

TextView의 동적 세트를 중심으로 TextView를 어떻게 유지합니까 ?? 당신은 프로그래밍 다음의 텍스트 뷰의 위치가 center_vertical 및 center_horizontal 속성에서 설정 한 원래의 중심 위치에서 변경됩니다 경우

여기 내 XML 파일

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:id="@+id/vgRelativeLayout"> 

    <TextView    
     android:id="@+id/tViewID" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"    
     android:layout_gravity="center" 
     android:center_vertical="true" 
     android:center_horizontal="true" /> 
</RelativeLayout> 

입니다.

TextView의 새 위치가 수직 눈금에서 낮아집니다.

가로 눈금의 위치는 변경되지 않습니다.

TextView tView = (TextView) findViewById(R.id.tViewID); 

tView.setTextSize(1); 
Thread.sleep(5000); 

tView.setTextSize(300); 
Thread.sleep(5000); 

tview.setTextSize(1); 

답변

0

레이아웃을 다시 호출하려면 레이아웃을 호출해야하는 것처럼 들립니다. 이 경우 일반적으로 RelativeLayout에 대한 참조를 가져 와서 호출 할 수있는 RequestLayout()을 사용합니다.

RelativeLayout에 ID를 부여한 다음 findViewById()로 참조를 가져온 다음 텍스트 크기를 변경 한 후에 RequestLayout을 호출해야합니다.

+0

RelativeLayout에 ID를 할당하고 findViewById()를 사용하여 ID를 찾으려고하면 'vgRelativeLayout을 확인할 수 없거나 필드가 아닙니다.'라는 오류가 발생합니다. – user1992128

+0

코드 : RelativeLayout rLayout = (RelativeLayout) findViewById (R.id.vgRelativeLayout); – user1992128

+0

생성 된 R 파일에 제대로 컴파일되지 않은 것 같습니다. 새로운 XML 코드가 무엇입니까? –

0

android : layout_centerHorizontal = "true"& android : layout_centerVertical = "true"또는이 android : layout_centerInParent = "true"를 사용해보십시오. 그것이 작동하는 경우 투표 날

+0

TextView에 적용 할 때 그 중 어느 것도 작동하지 않습니다. – user1992128

관련 문제