Autore Topic: Button in TableLayout  (Letto 460 volte)

Offline tonyontravel

  • Nuovo arrivato
  • *
  • Post: 36
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxi Next
  • Sistema operativo:
    Windows XP
Button in TableLayout
« il: 03 Febbraio 2012, 00:09:27 CET »
0
Ciao a tutti.

Ecco il problema:
ho un layout composto da diversi Linear e Table layout
La parte centrale è costituita da un Table Layout con all'interno di ogni singola Table Row  2 TextView, 1 EditText e 2 Button
La parte finale da un layout di 4 Buttons

Mi succede che i Buttons della parte finale funzionano, mentre quelli all'interno della TableLayout sembra non abbiano alcune effetto.
Ho controllato con il Log che onClick non viene eseguito.

Qualcuno sa indicarmi il motivo?

Grazie.

Claudio


Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:background="@drawable/rts_back"
   android:orientation="vertical" >

    <LinearLayout
       android:id="@+id/linearLayout0"
       android:layout_width="match_parent"
       android:layout_height="wrap_content" >

        <ImageView
           android:id="@+id/imageView1"
           android:layout_width="85dp"
           android:layout_height="match_parent"
           android:src="@drawable/nexty" />

        <TableLayout
           android:id="@+id/tableLayout1"
           android:layout_width="match_parent"
           android:layout_height="wrap_content" >

            <TableRow
               android:id="@+id/tableRow5"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content" >

                <TextView
                   style="@style/bucaTab04"
                   android:text="" />

                <TextView
                   android:id="@+id/textView2"
                   style="@style/bucaTab01"
                   android:text="Buca" />

                <TextView
                   android:id="@+id/textView3"
                   style="@style/bucaTab02"
                   android:text="Par" />

                <TextView
                   android:id="@+id/textView1"
                   style="@style/bucaTab03"
                   android:text="Hcp" />
            </TableRow>

            <TableRow
               android:id="@+id/tableRow1"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content" >

                <TextView
                   style="@style/bucaTab04"
                   android:text="" />

                <TextView
                   android:id="@+id/numBuca"
                   style="@style/bucaTab01"
                   android:text="--" />

                <TextView
                   android:id="@+id/parBuca"
                   style="@style/bucaTab02"
                   android:text="-" />

                <TextView
                   android:id="@+id/hcpBuca"
                   style="@style/bucaTab03"
                   android:text="--" />
            </TableRow>
        </TableLayout>
    </LinearLayout>

    <TextView
       style="@style/rigaDiv"
       android:layout_width="fill_parent"
       android:layout_height="10dp" >
    </TextView>

    <TableLayout
       android:id="@+id/tableLayout2"
       android:layout_width="match_parent"
       android:layout_height="wrap_content" >

        <TableRow
           android:id="@+id/tableRow5"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content" >

            <TextView
               android:id="@+id/textView2"
               style="@style/cellaGioBuca"
               android:text="Giocatore" />

            <TextView
               android:id="@+id/textView3"
               style="@style/cellaColpiBuca"
               android:text="Colpi" />

            <TextView
               android:id="@+id/textView1"
               style="@style/cellaPuntiBuca"
               android:text="Punti" />
        </TableRow>
    </TableLayout>

    <TableLayout
       android:id="@+id/tableLayout3"
       android:layout_width="match_parent"
       android:layout_height="wrap_content" >

      <TableRow
           android:layout_width="wrap_content"
           android:layout_height="wrap_content" >

            <TextView
               android:id="@+id/nomeGio1"
               style="@style/cellaGioBucaG"
               android:text="--------" />

            <Button
               android:id="@+id/bBucaMeno1"
               android:layout_width="29dp"
               android:layout_height="wrap_content"
               android:text="-" />

            <EditText
               android:id="@+id/colpiGio1"
               android:layout_width="40dp"
               android:layout_height="wrap_content"
               android:inputType="number" >

                <requestFocus />
            </EditText>

            <Button
               android:id="@+id/bBucaPiu1"
               android:layout_width="29dp"
               android:layout_height="wrap_content"
               android:text="+" />

            <TextView
               android:id="@+id/puntiGio1"
               style="@style/cellaPuntiBucaG"
               android:text="-" />
        </TableRow>[/glow]
        <TableRow
           android:layout_width="wrap_content"
           android:layout_height="wrap_content" >

            <TextView
               android:id="@+id/nomeGio2"
               style="@style/cellaGioBucaG"
               android:text="--------" />

            <Button
               android:id="@+id/bBucaMeno2"
               android:layout_width="29dp"
               android:layout_height="wrap_content"
               android:text="-" />

            <EditText
               android:id="@+id/colpiGio2"
               android:layout_width="40dp"
               android:layout_height="wrap_content"
               android:inputType="number" >
            </EditText>

            <Button
               android:id="@+id/bBucaPiu2"
               android:layout_width="29dp"
               android:layout_height="wrap_content"
               android:text="+" />

            <TextView
               android:id="@+id/puntiGio2"
               style="@style/cellaPuntiBucaG"
               android:text="-" />
        </TableRow>

        <TableRow
           android:layout_width="wrap_content"
           android:layout_height="wrap_content" >

            <TextView
               android:id="@+id/nomeGio3"
               style="@style/cellaGioBucaG"
               android:text="--------" />

            <Button
               android:id="@+id/bBucaMeno3"
               android:layout_width="29dp"
               android:layout_height="wrap_content"
               android:text="-" />

            <EditText
               android:id="@+id/colpiGio3"
               android:layout_width="40dp"
               android:layout_height="wrap_content"
               android:inputType="number" >
            </EditText>

            <Button
               android:id="@+id/bBucaPiu3"
               android:layout_width="29dp"
               android:layout_height="wrap_content"
               android:text="+" />

            <TextView
               android:id="@+id/puntiGio3"
               style="@style/cellaPuntiBucaG"
               android:text="-" />
        </TableRow>

        <TableRow
           android:layout_width="wrap_content"
           android:layout_height="wrap_content" >

            <TextView
               android:id="@+id/nomeGio4"
               style="@style/cellaGioBucaG"
               android:text="--------" />

            <Button
               android:id="@+id/bBucaMeno4"
               android:layout_width="29dp"
               android:layout_height="wrap_content"
               android:text="-" />

            <EditText
               android:id="@+id/colpiGio4"
               android:layout_width="40dp"
               android:layout_height="wrap_content"
               android:inputType="number" >
            </EditText>

            <Button
               android:id="@+id/bBucaPiu4"
               android:layout_width="29dp"
               android:layout_height="wrap_content"
               android:text="+" />

            <TextView
               android:id="@+id/puntiGio4"
               style="@style/cellaPuntiBucaG"
               android:text="-" />
        </TableRow>
    </TableLayout>

<LinearLayout
       android:id="@+id/linearLayout1"
       android:layout_width="match_parent"
       android:layout_height="fill_parent"
       android:gravity="center" >

        <Button
           android:id="@+id/bBucaP"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_weight="1"
           android:text="@string/bucaP" />

        <Button
           android:id="@+id/bConfBuca"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_weight="1"
           android:text="@string/modiB" />

        <Button
           android:id="@+id/bBucaS"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_weight="1"
           android:text="@string/bucaS" />

        <Button
           android:id="@+id/bScore"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_weight="1"
           android:text="@string/front9" />
    </LinearLayout>
</LinearLayout>

questo è il codice

Codice (Java): [Seleziona]
                /* *************************************************************
                 * Bottoni risultati
                 * *************************************************************
                 */

/*              bBg2M = (Button) findViewById(R.id.bBucaMeno2);
                bBg2P = (Button) findViewById(R.id.bBucaPiu2);
                bBg3M = (Button) findViewById(R.id.bBucaMeno3);
                bBg3P = (Button) findViewById(R.id.bBucaPiu3);
                bBg4M = (Button) findViewById(R.id.bBucaMeno4);
                bBg4P = (Button) findViewById(R.id.bBucaPiu4);
*/

                bBg1M = (Button) findViewById(R.id.bBucaMeno1);

                bBg1M.setOnClickListener(new View.OnClickListener() {

                        public void onClick(View arg0) {
                                // TODO Auto-generated method stub
                                String sCbuca = tvGiC1.getText().toString();
                                int colpi = Integer.parseInt(sCbuca);
                                if (colpi > 0) {
                                        colpi = colpi--;
                                }
                                Log.i("Colpi", Integer.toString(colpi));
                                tvGiC1.setText(Integer.toString(colpi));
                        }
                });

                bBg1P = (Button) findViewById(R.id.bBucaPiu1);

                bBg1P.setOnClickListener(new View.OnClickListener() {

                        public void onClick(View arg0) {
                                // TODO Auto-generated method stub
                                String sCbuca = tvGiC1.getText().toString();
                                int colpi = Integer.parseInt(sCbuca);
                                colpi = colpi++;
                                Log.i("Colpi", Integer.toString(colpi));
                                tvGiC1.setText(Integer.toString(colpi));
                        }
                });

                /* *************************************************************
                 * Bottoni fondo pagina
                 * *************************************************************
                 */


                bPrec = (Button) findViewById(R.id.bBucaP);

                bPrec.setOnClickListener(new View.OnClickListener() {

                        public void onClick(View v) {
                                // TODO Auto-generated method stub
                                if (bucaCorr > 1) {
                                        bucaCorr = bucaCorr - 1;
                                }
                                Intent intentBuca;
                                intentBuca = new Intent(getApplicationContext(), callBuca.class);
                                String pkg = getPackageName();
                                intentBuca.putExtra(pkg + ".myInt", bucaCorr);

                                startActivity(intentBuca);

                        }
                });

                bConf = (Button) findViewById(R.id.bConfBuca);

                bConf.setOnClickListener(new View.OnClickListener() {

                        public void onClick(View v) {
                                // TODO Auto-generated method stub
                                Log.i("Conferma", "Calcola Punti");
                                info.open();
                                for (int num_gio = 0; num_gio < 4; num_gio++) {
                                        if (num_gio == 0) {
                                                hcpgio = hcpgio1;
                                                String sCbuca = tvGiC1.getText().toString();
                                                colpi_buca = Integer.parseInt(sCbuca);
                                                punti_buca = calc.calcPunti(colpi_buca, hcpgio,
                                                                parbuca, hcpbuca);
                                                supar_buca = calc.calcSuPar(colpi_buca, hcpgio,
                                                                parbuca, hcpbuca);
                                                tvGiP1.setText(Integer.toString(punti_buca));
                                        } else if (num_gio == 1) {
                                                hcpgio = hcpgio2;
                                                String sCbuca = tvGiC2.getText().toString();
                                                colpi_buca = Integer.parseInt(sCbuca);
                                                punti_buca = calc.calcPunti(colpi_buca, hcpgio,
                                                                parbuca, hcpbuca);
                                                supar_buca = calc.calcSuPar(colpi_buca, hcpgio,
                                                                parbuca, hcpbuca);
                                                tvGiP2.setText(Integer.toString(punti_buca));
                                        } else if (num_gio == 2) {
                                                hcpgio = hcpgio3;
                                                String sCbuca = tvGiC3.getText().toString();
                                                colpi_buca = Integer.parseInt(sCbuca);
                                                punti_buca = calc.calcPunti(colpi_buca, hcpgio,
                                                                parbuca, hcpbuca);
                                                supar_buca = calc.calcSuPar(colpi_buca, hcpgio,
                                                                parbuca, hcpbuca);
                                                tvGiP3.setText(Integer.toString(punti_buca));

                                        } else {
                                                hcpgio = hcpgio4;
                                                String sCbuca = tvGiC4.getText().toString();
                                                colpi_buca = Integer.parseInt(sCbuca);
                                                punti_buca = calc.calcPunti(colpi_buca, hcpgio,
                                                                parbuca, hcpbuca);
                                                supar_buca = calc.calcSuPar(colpi_buca, hcpgio,
                                                                parbuca, hcpbuca);
                                                tvGiP4.setText(Integer.toString(punti_buca));

                                        }
                                        info.updatePlayer(bucaCorr, num_gio, colpi_buca,
                                                        punti_buca, supar_buca);
                                        datiPlayer = info.getPlayerData(num_gio);
                                        calc.sommaColpi(datiPlayer);
                                        int tot_colpi = Integer.parseInt(datiPlayer[5]);
                                        int tot_punti = Integer.parseInt(datiPlayer[6]);
                                        int supar = Integer.parseInt(datiPlayer[4]);
                                        info.updatePlayerTot(num_gio, tot_colpi, tot_punti, supar);
                                }
                                info.close();
                        }

                });

                bSucc = (Button) findViewById(R.id.bBucaS);

                bSucc.setOnClickListener(new View.OnClickListener() {

                        public void onClick(View v) {
                                // TODO Auto-generated method stub
                                if (bucaCorr < 18) {
                                        bucaCorr = bucaCorr + 1;
                                }
                                Intent intentBuca;
                                intentBuca = new Intent(getApplicationContext(), callBuca.class);
                                String pkg = getPackageName();
                                intentBuca.putExtra(pkg + ".myInt", bucaCorr);

                                startActivity(intentBuca);

                        }
                });

                bScore.setOnClickListener(new View.OnClickListener() {

                        public void onClick(View v) {
                                // TODO Auto-generated method stub

                                Intent vediScore;
                                String pkg = getPackageName();

                                if (bucaCorr < 10) {
                                        vediScore = new Intent(getApplicationContext(),
                                                        frontNine.class);
                                } else {
                                        vediScore = new Intent(getApplicationContext(),
                                                        backNine.class);
                                }
                                pkg = getPackageName();
                                vediScore.putExtra(pkg + ".myInt", bucaCorr);
                                startActivity(vediScore);

                        }
                });

        }

}

ho messo solo la parte relativa ai buttons

Offline mary2501

  • Utente junior
  • **
  • Post: 70
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    htc desire hd
  • Sistema operativo:
    mac , windows xp
Re:Button in TableLayout
« Risposta #1 il: 03 Febbraio 2012, 09:57:25 CET »
0
perchè hai commentato la parte relativa alla loro inizializzazione!

Offline tonyontravel

  • Nuovo arrivato
  • *
  • Post: 36
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxi Next
  • Sistema operativo:
    Windows XP
Re:Button in TableLayout
« Risposta #2 il: 03 Febbraio 2012, 10:11:32 CET »
0
Perchè sono 4 righe (ne ho commentate 3) per trovare la soluzione con una sola,  prima di ripetere la stessa cosa per gli altri.

Comunque nel frattempo ho risolto portando il Linear Layout finale all'interno della Table Layout.

Però mi piacerebbe capire il perchè nell'altro modo non funziona.