2013-02-22 2 views
0

제 질문에 대해 자세히 설명 드리겠습니다. 5 개의 탭이 있고 내 애플리케이션의 스플래시 화면 뒤에 내 Tab 클래스가 실행되고 첫 번째 탭이 표시됩니다.Tab 실행시 동적으로 설정된 textView를 만드는 방법은 무엇입니까?

첫 번째 탭에는 다른 조건의 사용자가 입력 한 특정 조건에서 특정 텍스트를 표시하는 TextView가 포함 된 클래스가 있습니다.

TextView duration = (TextView)view.findViewById(R.id.duration); 
duration.setText(durationNumber); 

if(week <= 12) 
{ 
durationNumber = "Less than 12 weeks"; 
} 

else 
{ 
durationNumber = "More than 12 weeks"; 
} 

다른 응용 프로그램을 실행할 때 다른 탭으로 이동하여 첫 번째 탭으로 돌아 가기 전까지는 텍스트가 표시되지 않습니다. 나는 주위를 인터넷 검색하고 해결책을 찾을 수 없습니다. SharedPreferences 사용하여 시도했지만 작동하지 않았다. 아마 내가 잘못 했어.

왜 이런 일이 발생하며 어떻게 해결할 수 있습니까?

답변

2

durationNumber의 초기 값은 무엇입니까? if-else 루프에서 설정되기 전에 null입니까? null이면 표시 할 값이 없으므로 TextView가 나타나지 않습니다.

if-else 루프 다음에 TextView 텍스트를 다시 설정해야합니다. 이것을 시도하십시오 ...

TextView duration = (TextView)view.findViewById(R.id.duration); 
if(week <= 12) { 
    durationNumber = "Less than 12 weeks"; 
} else { 
    durationNumber = "More than 12 weeks"; 
} 
duration.setText(durationNumber); 
+0

그래, 성공했습니다! 나는 그런 생각을하지 않았다. 잘 설명하고 감사합니다. @ neo108! –

+0

걱정 마세요 @HoneyH. 코딩 즐기기 :-) – neo108

관련 문제