setText – nu poate rezolva metoda (Programare, Android)

EnduroDave a intrebat.
a intrebat.

Destul de sigur că aceasta este o întrebare stupidă, dar nu pot să înțeleg acest lucru.

Încerc să obțin un număr întreg returnat de un datepicker într-un șir de caractere. Acest cod funcționează în cazul în care day este numărul întreg de interes

dateButton = (Button) findViewById(R.id.dateButton);
dateButton.setText((Integer.toString(day));

Acest cod îmi dă eroarea că nu poate rezolva metoda setText

String yearString = "";
yearString.setText(Integer.toString(year)); 

Nu înțeleg de ce nu pot să convertesc int într-un șir de caractere decât dacă folosesc o vizualizare?

Comentarii

  • folosiți Integer.valueOf() –  > Por santalu.
  • Ce este yearString aici? –  > Por Himanshu Agarwal.
  • YearString este nul. Este ceea ce vreau să fie setat la anul ca un șir de caractere –  > Por EnduroDave.
  • Clasa String (din care yearString este o instanță) nu are o metodă numită „setText”. Când spuneți „Acest cod îmi dă eroare”, înseamnă că aveți o problemă de compilare. Partea referitoare la Button (care are metoda ‘setText’) este irelevantă. Modalitatea de a seta o valoare String este : yearString = Integer.toString(day) – sau alte câteva opțiuni. –  > Por Dror Fichman.
  • Da, mi-am dat seama că nu butonul nu era problema, dar l-am pus acolo pentru context, pentru a arăta că nu există o problemă mai mare. Aceasta este soluția și va fi marcată ca atare dacă o veți transforma într-un răspuns –  > Por EnduroDave.
5 răspunsuri
Chitrang

Este acest lucru, ceea ce vrei să faci.

int year = 2014;
String yearString = Integer.toString(year); 

Pentru că stText mthod este doar pentru a seta textul pe anumite vizualizări pe android, cum ar fiTextView, EditText, Button.

Beena

Puteți seta valoarea întreagă prin următoarele moduri dacă ziua este o valoare întreagă,

dateButton.setText(day+"");

sau prin

dateButton.setText(String.valueOf(day));

sau

dateButton.setText(Integer.toString(day));

Comentarii

  • Toate acestea funcționează pe butonul de dată, dar aruncă o eroare pe yearString, care este problema mea –  > Por EnduroDave.
  • Care este valoarea lui yearString? Este un număr întreg sau un șir de caractere? Și dacă este nulă, atunci înainte de a o seta, validați-o o dată. Dacă este nulă, atunci setați un șir gol. –  > Por Beena.
koutuk
dateButton = (Button) findViewById(R.id.dateButton);
dateButton.settext(Interger.Valueof(day));

Comentarii

  • Databutton nu este problema. Funcționează în codul meu. yearString este problema –  > Por EnduroDave.
  • String yearString = „”; yearString.setText(Integer.toString(yearString)); pentru că treceți String to tostring(), ceea ce nu este permis în java ….Type cast error aici faceți Integer.toString, ceea ce înseamnă că tostring arată INteger, nu String –  > Por koutuk.
Jaydeep

În loc de

dateButton.setText((Integer.toString(day));

Încercați acest lucru

dateButton.setText(day+"");

sivi

trebuie să instanțiezi obiectul înainte de a apela vizualizarea Sunt nou în acest domeniu, de asemenea, așa că acest lucru

((TextView) findViewById(R.id.now_playing_text)).setText(trackTitle)

Devine

TextView Title = (TextView) findViewById(R.id.now_playing_text);
Title.setText(trackTitle);

setText trebuie să fie aplicat pe o clasă care conține în ea sau în clasele de suprare metoda setText.

Tags: