2012-01-14 3 views
0

나는 텍스트가없는 12 버튼을 사용하여 게임을합니다. 그들이 생명을 잃을 때마다이 코드는 버튼을 투명하게 만든 다음 안드로이드에서 다시 불투명하게 만들기

public void guessesRemainingDisplay(int numberOfGuesses) { 

    int guessesRemaining; 

    guessesRemaining = maximumGuesses + 1 - numberOfGuesses; 

    switch(guessesRemaining) { 

    case 1: 

     findViewById(R.id.Guess1).setBackgroundColor(color.transparent); 
     break; 

    case 2: 
     findViewById(R.id.Guess2).setBackgroundColor(color.transparent); 
     break; 

    case 3: 
     findViewById(R.id.Guess3).setBackgroundColor(color.transparent); 
     break; 

    case 4: 
     findViewById(R.id.Guess4).setBackgroundColor(color.transparent); 
     break; 

    case 5: 
     findViewById(R.id.Guess5).setBackgroundColor(color.transparent); 
     break; 

    case 6: 
     findViewById(R.id.Guess6).setBackgroundColor(color.transparent); 
     break; 

    case 7: 
     findViewById(R.id.Guess7).setBackgroundColor(color.transparent); 
     break; 

    case 8: 
     findViewById(R.id.Guess8).setBackgroundColor(color.transparent); 
     break; 

    case 9: 
     findViewById(R.id.Guess9).setBackgroundColor(color.transparent); 
     break; 

    case 10: 
     findViewById(R.id.Guess10).setBackgroundColor(color.transparent); 
     break; 

    case 11: 
     findViewById(R.id.Guess11).setBackgroundColor(color.transparent); 
     break; 

    case 12: 
     findViewById(R.id.Guess12).setBackgroundColor(color.transparent); 
     break; 


    } 

} 

를 실행 그리고 가장 멀리 가장 오른쪽 버튼의 사라 (그들은 오른쪽에서 왼쪽 12, 줄 1이다). 나는 새로운 게임을 시작할 때 활동이 처음 열릴 때 그러나

, 또는이 코드는 모든 단일 ID에 대해 반복

findViewById(R.id.Guess1).setBackgroundColor(color.X); 

실행됩니다. X는 사실상 어떤 색상이든 (나는 여러 가지 다른 것들로 시도해 보았습니다). 어떤 이유로이 코드를 실행하면 버튼이 사라집니다. 왜? 실행되지 않으면 12 개의 버튼이 나타나지만 새 게임을 시작할 때마다 잃어버린 삶 때문에 사라진 버튼이 다시 나타나지 않습니다.

답변

1

작업을 위해 findViewById(R.id.id).setVisibility(View.Invisible)을 사용하는 것이 좋으며 'findViewById (R.id.id) .setVisibility (View.Visible)'를 사용하면보기를 되돌릴 수 있습니다.

+0

감사합니다. 완벽하게 작동했습니다. –