2012-08-06 2 views
0

배열에 하나 이상의 개체가있는 경우 단추를 표시하려고합니다. 그렇지 않으면 보이지 않게됩니다.Android - 보이지 않는 단추

내가 사용하고 있습니다 :

if (positionOverlay.geoPointsArrayList.size() <= 0){ 
    buttonClear.setVisibility(View.GONE); 
    System.out.println("Clear button hidden"); 
} 
else if (positionOverlay.geoPointsArrayList.size() >= 1) { 
    buttonClear.setVisibility(View.VISIBLE); 
    System.out.println("Clear button visible"); 
} 

오전 데 문제가 내가 배열에 객체를 추가하지만 때, 그것을 실행에 내가 비어 사용하고있는 배열을 시작, 그래서 버튼이 보이지 않는 유지한다는 것입니다 여전히 보이지 않는 채로있어 코드를 다시 실행하지 않습니다.

위의 코드를 onCreate에 두었습니다. 아무도 내가 잘못 갔는지 말할 수 있습니까?

+1

은 당신이 당신의 ArrayList를 채운 후에는이 단계 콜백을해야한다. 그렇지 않으면 시스템이이 코드로 돌아가서 조건을 실행할 수 없습니다. –

+0

전체 코드 게시 ... – MAC

+0

try buttonClear.setVisibility (View.INVISIBLE); – Youddh

답변

3

개체 배열을 변경하면 onCreate에있는 코드를 실행해야합니다. 이제 시작시 검사 만하고 변경되는 배열에는 전혀 연결되지 않습니다.

그래서 의사에 당신이있는 경우 :

array.add("new item"); 
this.updateButton(); // This is where you have your button code. 

array.remove("some other item"); 
this.updateButton(); // Check if you've gone below the limit again 
+0

자기가 자바가 아닙니다 -이 뜻인가요? – Elemental

+0

@ 엘레멘트 예, 예, 했어요. 최근에 너무 많은 목표 C ... 고정. – thegrinner

+0

Elemental : "그래서 의사 코드에서 ..."Java가 될 의도는 없습니다 .... @thegrinner 또는 어쩌면 ... 어떤 경우에 세미콜론 =이 누락 되었습니까?) – FoamyGuy