2011-07-03 2 views
0

특정 조건이 충족되면 일부 요소를 동적으로 숨기려고합니다. 나는 onCreate에서이 코드를 사용하십시오 TextViewsetVisibility (View.GONE) 행에서 onCreate()가 중단되는 이유는 무엇입니까?

if (something) { 
      //do something 
     } else { 
      myTextView.setVisibility(View.GONE); 
} 

을 숨기려면이 코드를 사용합니다.

그러나 앱은 View.GONE 인 줄에서 중단됩니다.

왜 발생합니까? onCreate에서 요소를 숨길 수 있습니까? 이것이 사실이라면이 코드를 어디에 사용해야합니까?

명확히하기 위해 Activity로드 전에 숨기려고합니다. 버튼의 클릭 이벤트에있는 동일한 코드가 앱을 중단하지 않습니다.

+1

Stacktrace 및 LogCat 출력 게시 –

답변

1

TextView myTextView가 null 일 수도 있습니다. 사용하기 전에 참조해야합니다. 루카스 크 누스에 의해, 확인하고 Stracktrace을 게시 말했듯이 보통 당신은

myTextView = (TextView) findViewById(R.id.mytextviewid) 

를 통해이 작업을 수행. 거기에 NullPointerException이 표시되어야합니다.

+0

stacktrace가 필요하지 않습니다. 조건의 일부로 TextView를 내부적으로 초기화했습니다. 그래서 그것이 깨지기 시작했습니다. 그냥 감독. 감사 – sandalone

1

당신은 당신의 XML로보기 visibility="gone"을 .... 그리고 특정 조건을 확인하실 수 있습니다 ..

if(cond) 
{ 
myTextViewmyTextView.setVisibility(View.Visible); 
} 

는 또한 XML과 같이 findViewById()에서 ID를 확인 모두 .... 동일해야 myTextView 아이디 IF Null 포인터 예외

관련 문제