마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

다수의 버튼을 만드는 방법 질문

0 추천

제가 버튼이 1184개가 필요한데 ..  동적으로 생성은 잘했는데 1184개의 버튼을 눌렀을때 표시하는 텍스트가 

전부 달라요 제가 저렇게 짯는데 모든 버튼을 누르면 1184번째 텍스트만 표기되네요 ㅠㅠ  어떻게 해야할까요?

 Button btnArr[] = new Button[1184];
   while(i < btnArr.length)
        {
            introll = Integer.parseInt(strroll); //sting을 int 으로

            Cursor cursor = db.rawQuery("select book,korea,english from tb_sdb where _id = ?",new String[] {strroll});
            while (cursor.moveToNext()) {
                bookmarkcheck= cursor.getString(0);
                korea= cursor.getString(1);
                english= cursor.getString(2);
                break;
            }
            cursor.close();
            introll++;

            strroll = Integer.toString(introll); //int를 string으로

            rollbook = bookmarkcheck;

            if(rollbook.equals("1") )
            {
                btnArr[i] = new Button(this);
                btnArr[i].setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 200));  //가로세로 폭
                btnArr[i].setId(i);  

                list.addView(btnArr[i]);  


 Cursor cursorz = db.rawQuery("select english from tb_sdb where num = ?",new String[] {btnpush[jj]});
        while (cursorz.moveToNext()) {
            english= cursorz.getString(0);
            break;
        }
        cursorz.close();

        btnArr[i].setOnClickListener(new Button.OnClickListener() {

            @Override
            public void onClick(View v) {

                text.setText(english); //차례로 영어 값을 넣어줌

                bookmarkadd.setImageResource(R.drawable.bookmarktext1);
                tts.speak(text.getText().toString(), TextToSpeech.QUEUE_ADD, null);//ttstts
            }
        });
                i++;   jj++;
            }
            else
            {
                i++; 
            }


        }

 

루비 (1,040 포인트) 님이 2019년 4월 6일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...