안녕하세요
 
안드로이드 쪽으로 개발해보고자 하는 완전초보인 학생입니다 ㅠㅠ
 
빙고 어플을 제작하려고 하는데요
 
이 부분이 게임 클레스 부분입니다.
 
package net.npaka.Bingo;
import java.util.*;
import net.npaka.Bingo.R;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class Gamepage extends Activity{
 
 @Override
 public void onBackPressed() {
  // TODO Auto-generated method stub
  super.onBackPressed();
  Intent intent = new Intent(Gamepage.this, Waiting_room.class);
  startActivity(intent);
  finish();
 }
 
 int buttenaera[] = {R.drawable.a0,R.drawable.a01,R.drawable.a02,R.drawable.a03,R.drawable.a04
   ,R.drawable.a05,R.drawable.a06,R.drawable.a07,R.drawable.a08,R.drawable.a09,R.drawable.a10,
   R.drawable.a11,R.drawable.a12,R.drawable.a13,R.drawable.a14,R.drawable.a15,R.drawable.a16,R.drawable.a17
   ,R.drawable.a18,R.drawable.a19,R.drawable.a20,R.drawable.a21,R.drawable.a22,R.drawable.a23,R.drawable.a24
   ,R.drawable.a25,R.drawable.a26,R.drawable.a27,R.drawable.a28,R.drawable.a29,R.drawable.a30,R.drawable.a31
   ,R.drawable.a32,R.drawable.a33,R.drawable.a34,R.drawable.a35,R.drawable.a36,R.drawable.a37,R.drawable.a38
   ,R.drawable.a39,R.drawable.a40,R.drawable.a41,R.drawable.a42,R.drawable.a43,R.drawable.a44,R.drawable.a45
   ,R.drawable.a46,R.drawable.a47,R.drawable.a48,R.drawable.a49,R.drawable.a50};
 int buttenId[] = {R.id.button1,R.id.button2,R.id.button3,R.id.button4,R.id.button5,R.id.button6,R.id.button7
   ,R.id.button8,R.id.button9,R.id.button10,R.id.button11,R.id.button12,R.id.button13,R.id.button14,R.id.button15,
   R.id.button16,R.id.button17,R.id.button18,R.id.button19,R.id.button20,R.id.button21,R.id.button22,R.id.button23,
   R.id.button24,R.id.button25};
 int Line[] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
 int go = 0;
 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.game);
        Random rd =new Random();
        int i=0;
  int blank[] = new int[25];
  for (int j=0;j<25;j++){
   i = rd.nextInt(49)+1;
   blank[j] = i;
  }
  for(int j=0;j<25;j++){
   for(int k=0;k<25;k++){
    if(j==k && blank[j]==blank[k]);
    else if(blank[j] ==blank[k]){
     i = rd.nextInt(49)+1;
     blank[j] = i;
     k=0;
    }
   }
  }
        for(int j=0;j<25;j++){
   findViewById(buttenId[j]).setBackgroundResource(buttenaera[blank[j]]);
  }
  
        findViewById(R.id.back).setOnClickListener(mClickListener);
        findViewById(R.id.button1).setOnClickListener(mClickListener);
     findViewById(R.id.button2).setOnClickListener(mClickListener);
     findViewById(R.id.button3).setOnClickListener(mClickListener);
     findViewById(R.id.button4).setOnClickListener(mClickListener);
     findViewById(R.id.button5).setOnClickListener(mClickListener);
     findViewById(R.id.button6).setOnClickListener(mClickListener);
     findViewById(R.id.button7).setOnClickListener(mClickListener);
     findViewById(R.id.button8).setOnClickListener(mClickListener);
     findViewById(R.id.button9).setOnClickListener(mClickListener);
     findViewById(R.id.button10).setOnClickListener(mClickListener);
     findViewById(R.id.button11).setOnClickListener(mClickListener);
     findViewById(R.id.button12).setOnClickListener(mClickListener);
     findViewById(R.id.button13).setOnClickListener(mClickListener);
     findViewById(R.id.button14).setOnClickListener(mClickListener);
     findViewById(R.id.button15).setOnClickListener(mClickListener);
     findViewById(R.id.button16).setOnClickListener(mClickListener);
     findViewById(R.id.button17).setOnClickListener(mClickListener);
     findViewById(R.id.button18).setOnClickListener(mClickListener);
     findViewById(R.id.button19).setOnClickListener(mClickListener);
     findViewById(R.id.button20).setOnClickListener(mClickListener);
     findViewById(R.id.button21).setOnClickListener(mClickListener);
     findViewById(R.id.button22).setOnClickListener(mClickListener);
     findViewById(R.id.button23).setOnClickListener(mClickListener);
     findViewById(R.id.button24).setOnClickListener(mClickListener);
     findViewById(R.id.button25).setOnClickListener(mClickListener);
       
    }
 int cnt;
    Button.OnClickListener mClickListener = new Button.OnClickListener(){
     public void onClick(View v){
      
      switch(v.getId()){
      case R.id.button1:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[0]++;Line[5]++;Line[10]++;
       if(Line[0]==5||Line[5]==5||Line[10]==5)
        go++;
       break;
      case R.id.button2:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[0]++;Line[6]++;
       if(Line[0]==5||Line[6]==5)
        go++;
       break;
      case R.id.button3:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[0]++;Line[7]++;
       if(Line[0]==5||Line[7]==5)
        go++;
       break;
      case R.id.button4:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[0]++;Line[8]++;
       if(Line[0]==5||Line[8]==5)
        go++;
       break;
      case R.id.button5:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[0]++;Line[9]++;Line[11]++;
       if(Line[0]==5||Line[9]==5||Line[11]==5)
        go++;
       break;
      case R.id.button6:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[1]++;Line[5]++;
       if(Line[1]==5||Line[5]==5)
        go++;
       break;
      case R.id.button7:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[1]++;Line[6]++;Line[10]++;
       if(Line[1]==5||Line[6]==5||Line[10]==5)
        go++;
       break;
      case R.id.button8:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[1]++;Line[7]++;
       if(Line[1]==5||Line[7]==5)
        go++;
       break;
      case R.id.button9:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[1]++;Line[8]++;Line[11]++;
       if(Line[1]==5||Line[8]==5||Line[11]==5)
        go++;
       break;
      case R.id.button10:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[1]++;Line[9]++;
       if(Line[1]==5||Line[9]==5)
        go++;
       break;
      case R.id.button11:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[2]++;Line[5]++;
       if(Line[2]==5||Line[5]==5)
        go++;
          break;
      case R.id.button12:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[2]++;Line[6]++;
       if(Line[2]==5||Line[6]==5)
        go++;
       break;
      case R.id.button13:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[2]++;Line[7]++;Line[10]++;Line[11]++;
       if(Line[2]==5||Line[7]==5||Line[10]==5||Line[11]==5)
        go++;
       break;
      case R.id.button14:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[2]++;Line[8]++;
       if(Line[2]==5||Line[8]==5)
        go++;
       break;
      case R.id.button15:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[2]++;Line[9]++;
       if(Line[2]==5||Line[9]==5)
        go++;
       break;
      case R.id.button16:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[3]++;Line[5]++;
       if(Line[3]==5||Line[5]==5)
        go++;
       break;
      case R.id.button17:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[3]++;Line[6]++;Line[11]++;
       if(Line[3]==5||Line[6]==5||Line[11]==5)
        go++;
       break;
      case R.id.button18:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[3]++;Line[7]++;
       if(Line[3]==5||Line[7]==5)
        go++;
       break;
      case R.id.button19:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[3]++;Line[8]++;Line[10]++;
       if(Line[3]==5||Line[8]==5||Line[10]==5)
        go++;
       break;
      case R.id.button20:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[3]++;Line[9]++;
       if(Line[3]==5||Line[9]==5)
        go++;
       break;
      case R.id.button21:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[4]++;Line[5]++;Line[11]++;
       if(Line[4]==5||Line[5]==5||Line[11]==5)
        go++;
       break;
      case R.id.button22:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[4]++;Line[6]++;
       if(Line[4]==5||Line[6]==5)
        go++;
       break;
      case R.id.button23:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[4]++;Line[7]++;
       if(Line[4]==5||Line[7]==5)
        go++;
       break;
      case R.id.button24:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[4]++;Line[8]++;
       if(Line[4]==5||Line[8]==5)
        go++;
       break;
      case R.id.button25:
       findViewById(v.getId()).setBackgroundResource(buttenaera[0]);
       Line[4]++;Line[9]++;Line[10]++;
       if(Line[4]==5||Line[9]==5||Line[10]==5)
        go++;
       break;
      case R.id.back:
       Intent intent = new Intent(Gamepage.this, Waiting_room.class);
       startActivity(intent);
       finish();
       break;
      }
         if(go!=0&&(go%3)==0){
       new AlertDialog.Builder(Gamepage.this)
     .setTitle("Game Over")
     .setMessage(go+"줄 완성")
     .setPositiveButton("나가기", new DialogInterface.OnClickListener() {
     
    // @Override
     public void onClick(DialogInterface dialog, int which) {
      // TODO Auto-generated method stub
     }
    }).show();
       Intent intent = new Intent(Gamepage.this, Bingo.class);
       startActivity(intent);
       finish();
      }
         else if(go!=0){
          new AlertDialog.Builder(Gamepage.this)
     .setTitle("Game")
     .setMessage(go+"줄 완성")
     .setPositiveButton("닫기", new DialogInterface.OnClickListener() {
     
    // @Override
     public void onClick(DialogInterface dialog, int which) {
      // TODO Auto-generated method stub
     }
    }).show();
          
         }
     }
     
    };
}
어느 부분을 손대야 할지 몰라 풀로 올리는데..
 
아시다 시피 빙고라는게 1줄이 완성되고 쭉쭉 해서 5줄 완성이 되고 마무리 되는 게임입니다.
이 소스에서는 일단 3줄로 해놨는데요
여기 소스 실행을 했을때 1줄에 버튼 5개가 있는데 하나 버튼이 중복적으로 해서 인식이 되버립니다;;;;
 
예를들자면, (1,1) 부터 (1,5) 까지 해야 빙고 한줄 완성인데
(1,1) 5번을 클릭하면 또 한줄이 완성됫다고 뜨더군요 'ㅁ';;
게다가 한줄 완성하고 또 다른 버튼을 눌렀을때 게속 한줄이 완성됫다는 알림창이 떠버립니다;;
 
도저히 어느부분을 어떻게 다가가야 할지 엄두가 나질 않네요 ㅠㅠ
 
고수님들 조언 부탁드립니다. ㅠㅠ