CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: gianpassa con ben 1 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: carotix con ben 11 Thanks ricevuti negli ultimi sette giorni
Utente del mese: megthebest con ben 26 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 3 su 3
Discussione:

problema con ImageButton e ImageView

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Baby Droid


    Registrato dal
    Nov 2010
    Messaggi
    26

    Ringraziamenti
    5
    Ringraziato 0 volte in 0 Posts
    Predefinito

    problema con ImageButton e ImageView

    Ciao ragazzi,
    vi chiedo aiuto perchè, avendo questa schermata in allegato, cliccando sui bottoni dei colori, la maglietta (che è una ImageView) non cambia colore come ho indicato nel codice bensì mi ritorna tutto alla schermata precedente dell'applicazione. come posso risolere il problema?
    vi allego il codice:

     
    1
    2
    public class Contenuti001 extends Activity implements OnClickListener{
    3
        @Override
    4
        protected void onCreate(Bundle savedInstanceState) {
    5
            super.onCreate(savedInstanceState);
    6
            setContentView(R.layout.infocapi1);
    7
            
    8
            
    9
            View rosso1 = findViewById(R.id.rosso1);
    10
            rosso1.setOnClickListener(this);
    11
            View verde = findViewById(R.id.verde);
    12
            verde.setOnClickListener(this);
    13
            View blu = findViewById(R.id.blu);
    14
            blu.setOnClickListener(this);
    15
            View marrone = findViewById(R.id.marrone);
    16
            marrone.setOnClickListener(this);
    17
            View nero = findViewById(R.id.nero);
    18
            nero.setOnClickListener(this);
    19
            View back1 = findViewById(R.id.back1);
    20
            back1.setOnClickListener(this);
    21
            View taglias = findViewById(R.id.taglias);
    22
            taglias.setOnClickListener(this);
    23
            View tagliam = findViewById(R.id.tagliam);
    24
            tagliam.setOnClickListener(this);
    25
            View taglial = findViewById(R.id.taglial);
    26
            taglial.setOnClickListener(this);
    27
            View tagliaxl = findViewById(R.id.tagliaxl);
    28
            tagliaxl.setOnClickListener(this);
    29
            }
    30
        //ImageView maglia001 = (ImageView) findViewById(R.id.maglia001);
    31
        @Override
    32
        public void onClick(View arg0) {
    33
            // TODO Auto-generated method stub
    34
             switch (arg0.getId()) {
    35
             
    36
             case R.id.rosso1:
    37
                 {ImageView maglia001 = (ImageView) findViewById(R.id.maglia001);
    38
                 maglia001.setImageResource(R.drawable.rosso001);
    39
                 }
    40
             case R.id.blu:
    41
             {
    42
                 ImageView maglia001 = (ImageView) findViewById(R.id.maglia001);
    43
                maglia001.setImageResource(R.drawable.blu001);
    44
             }
    45
             case R.id.verde:
    46
             {
    47
                 ImageView maglia001 = (ImageView) findViewById(R.id.maglia001);
    48
                maglia001.setImageResource(R.drawable.verde001);
    49
             }
    50
             case R.id.marrone:
    51
             {
    52
                 ImageView maglia001 = (ImageView) findViewById(R.id.maglia001);
    53
                maglia001.setImageResource(R.drawable.marrone001);
    54
             }
    55
             case R.id.nero:
    56
             {
    57
                 ImageView maglia001 = (ImageView) findViewById(R.id.maglia001);
    58
                maglia001.setImageResource(R.drawable.nero001);
    59
             }
    60
             case R.id.back1:
    61
             {
    62
                 finish();
    63
             }
    64
                 
    65
             }
    66
            
    67
        }
    68


    e file xml:

    104
     
    1
    2
    <?xml version="1.0" encoding="utf-8"?>
    3
    <AbsoluteLayout
    4
    5
    android:id="@+id/widget35"
    6
    android:layout_width="fill_parent"
    7
    android:layout_height="fill_parent"
    8
    xmlns:android="http://schemas.android.com/apk/res/android"
    9
    >
    10
    <TextView
    11
    android:id="@+id/tshirtuomo"
    12
    android:layout_width="wrap_content"
    13
    android:layout_height="20px"
    14
    android:text="T-shirt uomo"
    15
    android:layout_x="64px"
    16
    android:layout_y="20px"
    17
    >
    18
    </TextView>
    19
    <TextView
    20
    android:id="@+id/comp1"
    21
    android:layout_width="wrap_content"
    22
    android:layout_height="wrap_content"
    23
    android:text="Composizione: 100% cotone."
    24
    android:layout_x="25px"
    25
    android:layout_y="147px"
    26
    >
    27
    </TextView>
    28
    <TextView
    29
    android:id="@+id/dett1"
    30
    android:layout_width="180px"
    31
    android:layout_height="wrap_content"
    32
    android:text="Dettagli: Jersey, girocollo."
    33
    android:layout_x="25px"
    34
    android:layout_y="165px"
    35
    >
    36
    </TextView>
    37
    <TextView
    38
    android:id="@+id/colori1"
    39
    android:layout_width="wrap_content"
    40
    android:layout_height="wrap_content"
    41
    android:text="Colori disponibili"
    42
    android:layout_x="25px"
    43
    android:layout_y="216px"
    44
    >
    45
    </TextView>
    46
    <ImageView
    47
    android:id="@+id/maglia001"
    48
    android:layout_width="91px"
    49
    android:layout_height="83px"
    50
    android:src="@drawable/rosso001"
    51
    android:layout_x="38px"
    52
    android:layout_y="55px"
    53
    >
    54
    </ImageView>
    55
    <ImageButton
    56
    android:id="@+id/rosso1"
    57
    android:layout_width="33px"
    58
    android:layout_height="33px"
    59
    android:src="@drawable/rosso"
    60
    android:layout_x="17px"
    61
    android:layout_y="239px"
    62
    >
    63
    </ImageButton>
    64
    <ImageButton
    65
    android:id="@+id/blu"
    66
    android:layout_width="33px"
    67
    android:layout_height="33px"
    68
    android:src="@drawable/blu"
    69
    android:layout_x="74px"
    70
    android:layout_y="239px"
    71
    >
    72
    </ImageButton>
    73
    <ImageButton
    74
    android:id="@+id/verde"
    75
    android:layout_width="33px"
    76
    android:layout_height="33px"
    77
    android:src="@drawable/verde"
    78
    android:layout_x="128px"
    79
    android:layout_y="240px"
    80
    >
    81
    </ImageButton>
    82
    <ImageButton
    83
    android:id="@+id/marrone"
    84
    android:layout_width="33px"
    85
    android:layout_height="33px"
    86
    android:src="@drawable/marrone"
    87
    android:layout_x="183px"
    88
    android:layout_y="241px"
    89
    >
    90
    </ImageButton>
    91
    <ImageButton
    92
    android:id="@+id/nero"
    93
    android:layout_width="33px"
    94
    android:layout_height="33px"
    95
    android:src="@drawable/nero"
    96
    android:layout_x="238px"
    97
    android:layout_y="241px"
    98
    >
    99
    </ImageButton>
    100
    ...
    101
    102
    </AbsoluteLayout>
    103
    104


    Illuminatemi per favore
    Immagini allegate

  2.  
  3. #2
    Senior Droid


    Registrato dal
    Dec 2009
    Messaggi
    307

    Ringraziamenti
    15
    Ringraziato 40 volte in 39 Posts
    Predefinito

    Hai dimenticato i "break" nelle clausole dello switch...
    In ogni case, se non c'è il break si prosegue ad eseguire il codice successivo, e quindi nel tuo caso se anche entra in case R.id.rosso1, prosegue fino a case R.id.back1 dove va a fare la finish()!
    Aggiungi un break alla fine di ogni case ed hai risolto.

  4. Il seguente Utente ha ringraziato Orochi per il post:

    eclipsoid (17-02-11)

  5. #3
    Administrator L'avatar di Andrea


    Registrato dal
    Nov 2008
    Messaggi
    3,368
    Smartphone
    Nexus S, myTouch Slide 4g

    Ringraziamenti
    143
    Ringraziato 880 volte in 323 Posts
    Predefinito

    Quote Originariamente inviato da Orochi
    Hai dimenticato i "break" nelle clausole dello switch...

    In ogni case, se non c'è il break si prosegue ad eseguire il codice successivo, e quindi nel tuo caso se anche entra in case R.id.rosso1, prosegue fino a case R.id.back1 dove va a fare la finish()!

    Aggiungi un break alla fine di ogni case ed hai risolto.

    Per questo motivo odio gli switch cases


    Inviato dal mio HTC HD2 usando Androidiani App

    Twitter @veke87

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy