CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: hobin con ben 1 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: carotix con ben 7 Thanks ricevuti negli ultimi sette giorni
Utente del mese: carotix con ben 23 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 9 su 9
Discussione:

instance variable "progressione" non riconosciuta nel metodo del bottone

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
    May 2014
    Messaggi
    48

    Ringraziamenti
    9
    Ringraziato 0 volte in 0 Posts
    Predefinito

    instance variable "progressione" non riconosciuta nel metodo del bottone

    ciao Androdiani, dopo diversi giorni, ho bisogno ancora del vs aiuto
    perche' come da oggetto l'app mi crasha aggiungendo la seguente linea nel metodo public void onClick(View arg0)? grazie
     
    1
    slargetext.setText(progressione);


    grazie, non dovrebbe estendere il valore di "progressione" dapprima da 0(quando la dichiaro) al valore finale della seekbar quando setto progressione=progress?
    grazie


    x
     
    1
    import android.app.Activity;
    2
    import android.os.Bundle;
    3
    import android.util.Log;
    4
    import android.view.View;
    5
    import android.view.View.OnClickListener;
    6
    import android.widget.Button;
    7
    import android.widget.EditText;
    8
    import android.widget.ProgressBar;
    9
    import android.widget.SeekBar;
    10
    import android.widget.SeekBar.OnSeekBarChangeListener;
    11
    import android.widget.TextView;
    12
    13
    //public class SICalculatorActivity extends Activity implements OnSeekBarChangeListener, {
    14
        public class SICalculatorActivity extends Activity implements OnSeekBarChangeListener,OnClickListener {
    15
    16
        private TextView samount,sinterest,syears, slargetext;
    17
        private EditText eamounts,einterest;
    18
        private SeekBar seekbar;
    19
        private Button calculate;
    20
        private int progressione=0;
    21
        String prog;
    22
     static final String LOG ="LogSeekBarDrill";
    23
        
    24
    @Override
    25
        protected void onCreate(Bundle savedInstanceState) {
    26
            super.onCreate(savedInstanceState);
    27
            setContentView(R.layout.sicalculator);
    28
            Log.d(LOG,"hereitis");
    29
            samount=(TextView) findViewById(R.id.amount_text);
    30
            sinterest=(TextView) findViewById(R.id.interest_text);
    31
            syears=(TextView) findViewById(R.id.years_progressBar);
    32
            slargetext=(TextView) findViewById(R.id.result_text3);
    33
            eamounts =(EditText) findViewById(R.id.edit_Amount);
    34
            einterest=(EditText) findViewById(R.id.edit_Interest);
    35
            seekbar=(SeekBar) findViewById(R.id.seekBar1);
    36
            calculate=(Button) findViewById(R.id.button_calculate);
    37
            
    38
            //seekbar.setOnClickListener( (OnClickListener) this);
    39
            seekbar.setOnSeekBarChangeListener(this);
    40
            calculate.setOnClickListener(this);
    41
        
    42
        }
    43
    44
        
    45
    46
    47
            
    48
        public void updateprogress(){
    49
            progressione=seekbar.getProgress();
    50
            slargetext.setText(progressione);
    51
        }
    52
    53
        @Override
    54
        public  void onProgressChanged(SeekBar seekBar, int progress,
    55
                boolean fromUser) {
    56
            syears.setText(progress+" Years");
    57
            progressione=progress;
    58
            
    59
             
    60
            
    61
        }
    62
    63
    64
        @Override
    65
        public void onStartTrackingTouch(SeekBar seekBar) {
    66
            // TODO Auto-generated method stub
    67
            
    68
        }
    69
    70
        @Override
    71
        public void onStopTrackingTouch(SeekBar seekBar) {
    72
            seekBar.setSecondaryProgress(seekBar.getProgress());
    73
            
    74
            
    75
        }
    76
    77
    78
    79
    80
    81
        @Override
    82
        public void onClick(View arg0) {
    83
            slargetext.setText(progressione);
    84
            
    85
        }
    86
    }

  2.  
  3. #2
    Senior Droid


    Registrato dal
    May 2010
    Località
    Rivoli
    Messaggi
    426

    Ringraziamenti
    6
    Ringraziato 48 volte in 47 Posts
    Predefinito

    Quote Originariamente inviato da ndrokki Visualizza il messaggio
    perche' come da oggetto l'app mi crasha aggiungendo la seguente linea nel metodo public void onClick(View arg0)? grazie
    1
     
    1
    slargetext.setText(progressione);
    Perchè crasha non lo sappiamo, ma possiamo farcelo dire dall'applicazione stessa:
    9
     
    1
    2
      try {
    3
        slargetext.setText(progressione);
    4
      } catch (Exception ex) {
    5
        // TBD: gestione intelligente degli errori 
    6
        String errore = ex.getMessage(); 
    7
        slargetext.setText("Mannaggia! E' successo questo: " + errore );
    8
      }
    9

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

    ndrokki (27-06-14)

  5. #3
    Baby Droid


    Registrato dal
    May 2014
    Messaggi
    48

    Ringraziamenti
    9
    Ringraziato 0 volte in 0 Posts
    Predefinito

    [QUOTE=TheCopacabanaMan;5798945]Perchè crasha non lo sappiamo, ma possiamo farcelo dire dall'applicazione stessa:
    QUOTE]

    grazie per questa tip per debuggare,
    ecco il testo copiato(ps cambiando sulla barra il numero, cambia il codice dopo ID#
    4
     
    1
    2
    //Mannaggia! E' successo questo: String resource ID#0x1c meno male che c'e Copacabana, perche' a me sto messaggio sembra
    3
    una misto di assembly code e giapponese!:).
    4


    studiando( o meglio dando in pasto la stringa in google
    ho trovato questo
    http://stackoverflow.com/questions/3...found-textview
    dove suggerisce di sostituire la stringa

    4
     
    1
    2
    slargetext.setText(progressione);
    3
    4

    con
    4
     
    1
    2
    slargetext.setText(Integer.toString(progressione));
    3
    4

    funziona! ma non capisco perche' quando uso eclipse mi da diversi setText , uno e'
    setText(CharSequence text):void
    un altro(insieme ad altri 5)
    setText(int resid):void

    quindi la mia domanda e': non capisco perche' se il primo argomento da passare e' una stringa e' chiaro che devo fare questa conversione da int a string, cioe' questa sorta di casting, ma la mia intenzione e'era di usare setText(int resid) no char!!!!
    questo mi porta a chiedermi una seconda domanda, ma e' solo la mia insana curiosita' (oltre che praticita')siccome le api tengono a volte dozzine e dozzine di metodi, come faccio a sapere quali sono i piu' utilizzati
    Ultima modifica di ndrokki; 27-06-14 alle 17:08

  6. #4
    Senior Droid


    Registrato dal
    May 2010
    Località
    Rivoli
    Messaggi
    426

    Ringraziamenti
    6
    Ringraziato 48 volte in 47 Posts
    Predefinito

    Ok, proviamo quest'altra:

    25
     
    1
    2
        
    3
    @Override
    4
        protected void onCreate(Bundle savedInstanceState) {
    5
            super.onCreate(savedInstanceState);
    6
            setContentView(R.layout.sicalculator);
    7
            Log.d(LOG,"hereitis");
    8
            samount=(TextView) findViewById(R.id.amount_text);
    9
            sinterest=(TextView) findViewById(R.id.interest_text);
    10
            syears=(TextView) findViewById(R.id.years_progressBar);
    11
            slargetext=(TextView) findViewById(R.id.result_text3);
    12
    <font color="#FF0000">      if ( slargetext== null) 
    13
              Toast.makeText(this, "Non ho trovato il componente slargetext!", Toast.LENGTH_LONG).show();
    14
    </font>     eamounts =(EditText) findViewById(R.id.edit_Amount);
    15
            einterest=(EditText) findViewById(R.id.edit_Interest);
    16
            seekbar=(SeekBar) findViewById(R.id.seekBar1);
    17
            calculate=(Button) findViewById(R.id.button_calculate);
    18
            
    19
            //seekbar.setOnClickListener( (OnClickListener) this);
    20
            seekbar.setOnSeekBarChangeListener(this);
    21
            calculate.setOnClickListener(this);
    22
        
    23
        }
    24
    25

    Le vedi le due righe di colore rosso? Bene, aggiungile al tuo codice

    Edit: ok, hai risolto.
    Un modo veloce per fare quello che vuoi, ed evitare un cast, potrebbe essere:

    slargetext.setText("" + progressione);

    In pratica, "sommando" una stringa ad un intero, l'intero viene trasformato in stringa, aggirando così l'errore.
    Ultima modifica di TheCopacabanaMan; 27-06-14 alle 17:17

  7. Il seguente Utente ha ringraziato TheCopacabanaMan per il post:

    ndrokki (27-06-14)

  8. #5
    Baby Droid


    Registrato dal
    May 2014
    Messaggi
    48

    Ringraziamenti
    9
    Ringraziato 0 volte in 0 Posts
    Predefinito

    dice Toast non puo' essere risolto come variabile..

  9. #6
    Baby Droid


    Registrato dal
    May 2014
    Messaggi
    48

    Ringraziamenti
    9
    Ringraziato 0 volte in 0 Posts
    Predefinito

    OPS SCusa dovevo importare Toast... appena fatto,
    cmq ho editato il testo sopra, ora funziona, anche se i toast temo che continuero' ad usarli solo per mangiare

  10. #7
    Senior Droid


    Registrato dal
    May 2010
    Località
    Rivoli
    Messaggi
    426

    Ringraziamenti
    6
    Ringraziato 48 volte in 47 Posts
    Predefinito

    Ho appena letto, ed editato anch'io il mio messaggio

    Buona prosecuzione

  11. Il seguente Utente ha ringraziato TheCopacabanaMan per il post:

    ndrokki (27-06-14)

  12. #8
    Baby Droid


    Registrato dal
    May 2014
    Messaggi
    48

    Ringraziamenti
    9
    Ringraziato 0 volte in 0 Posts
    Predefinito

    beh ti ho dato un doppio thank mi hai insegnato piu' tu oggi che tre mesi di self java study: toast per debuggare , come aggirare col doppio apice un int che deve essere letto come una string(diabolico by the way), e come trovare eccezioni per debuggare ( pensavo si potesse fare solo per i throwable)
    grande!

  13. #9
    Senior Droid


    Registrato dal
    May 2010
    Località
    Rivoli
    Messaggi
    426

    Ringraziamenti
    6
    Ringraziato 48 volte in 47 Posts
    Predefinito

    Grazie! apprezzo tantissimo

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