CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: 9mm con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 14 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 35 Thanks ricevuti nell'ultimo mese

Pagina 1 di 2 12 ultimoultimo
Ultima pagina
Visualizzazione dei risultati da 1 a 10 su 17
Discussione:

Problema a far girare semplice Hello World

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
    Androidiano


    Registrato dal
    Aug 2010
    Messaggi
    84

    Ringraziamenti
    2
    Ringraziato 1 volta in 1 Post
    Predefinito

    Problema a far girare semplice Hello World

    Ciao,
    stò seguendo una guida fornita dal mio professore ma...ho un problema...non gira...

    Si tratta di un semplicissimo hello world che richiama le risorse da Java tramite la classe R

    Praticamente ho il seguente file XML che contiene i vari messaggi da usare nell'applicazione (file /res/values/strings.xml) in cui semplicemente dichiaro una coppia che specifica il nome dell'applicazione ed una coppia che specifica il messaggio di hello world da mostrare all'utente

    codice:
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string name="app_name">Ciao Mondo</string>
        <string name="message">Ciao, Mondo Androide</string>
    </resources>
    Poi dentro src ho solo un'activity che di fatto deve solo visualizzare all'utente il messaggio "Ciao, Mondo Androide" contenuto dentro strings.xml

    codice:
    package mieapplicazioni.helloandroid;
    
    import android.app.Activity;
    import android.content.res.Resources;
    import android.os.Bundle;
    import android.widget.TextView;
    
    public class CiaoMondoAndroideActivity extends Activity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            
            Resources res = getResources();
            String message = res.getString(R.string.message);
            
            TextView tv = new TextView(this);
            tv.setText(message);
            
            setContentView(tv);
        }
    }
    Ecco...mi dà errore alla seguente linea:
    codice:
    String message = res.getString(R.string.message);
    e mi dice che R.string.message non può essere risolto

    Da cosa potrebbe dipendere? a me pare un bel po' strano...almeno da quello che ho capito legendo la guida mi pare tutto molto banale...qualche idea?

    Grazie
    Andrea

  2.  
  3. #2
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da AndreaNobili Visualizza il messaggio
    Da cosa potrebbe dipendere? a me pare un bel po' strano...almeno da quello che ho capito legendo la guida mi pare tutto molto banale...qualche idea?

    Grazie
    Andrea
    E' ancora più banale...
    Perché scomodare resources per recuperare la stringa? getString(int resid) è già un metodo di Context quindi di Activity e quindi della tua classe.
    Un semplice:

    String message = getString(R.string.message);

    dovrebbe funzionare, come riporta anche qui

    Credo che il tuo codice scoppi perché, per quanto legittimo, Resourcers ha bisogno dei riferimenti al package per andare a cercare le risorse, quindi forse dovresti esplicitarglielo...
    Ultima modifica di Cymon; 31-08-10 alle 12:45
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  4. #3
    Senior Droid


    Registrato dal
    Dec 2009
    Messaggi
    307

    Ringraziamenti
    15
    Ringraziato 40 volte in 39 Posts
    Predefinito

    Quote Originariamente inviato da AndreaNobili Visualizza il messaggio
    Ciao,
    stò seguendo una guida fornita dal mio professore ma...ho un problema...non gira...

    Si tratta di un semplicissimo hello world che richiama le risorse da Java tramite la classe R

    Praticamente ho il seguente file XML che contiene i vari messaggi da usare nell'applicazione (file /res/values/strings.xml) in cui semplicemente dichiaro una coppia che specifica il nome dell'applicazione ed una coppia che specifica il messaggio di hello world da mostrare all'utente

    codice:
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string name="app_name">Ciao Mondo</string>
        <string name="message">Ciao, Mondo Androide</string>
    </resources>
    Poi dentro src ho solo un'activity che di fatto deve solo visualizzare all'utente il messaggio "Ciao, Mondo Androide" contenuto dentro strings.xml

    codice:
    package mieapplicazioni.helloandroid;
    
    import android.app.Activity;
    import android.content.res.Resources;
    import android.os.Bundle;
    import android.widget.TextView;
    
    public class CiaoMondoAndroideActivity extends Activity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            
            Resources res = getResources();
            String message = res.getString(R.string.message);
            
            TextView tv = new TextView(this);
            tv.setText(message);
            
            setContentView(tv);
        }
    }
    Ecco...mi dà errore alla seguente linea:
    codice:
    String message = res.getString(R.string.message);
    e mi dice che R.string.message non può essere risolto

    Da cosa potrebbe dipendere? a me pare un bel po' strano...almeno da quello che ho capito legendo la guida mi pare tutto molto banale...qualche idea?

    Grazie
    Andrea
    Ma stai usando Eclipse per sviluppare? perchè se non lo stai usando mi pare che devi lanciare una utility da riga di comando per generare la classe "R", che da come hai scritto mi pare che non viene risolta (visto che probabilmente non è stata generata).
    Eclipse con il plugin per android, la genera in automatico.

  5. #4
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da Orochi Visualizza il messaggio
    Ma stai usando Eclipse per sviluppare? perchè se non lo stai usando mi pare che devi lanciare una utility da riga di comando per generare la classe "R", che da come hai scritto mi pare che non viene risolta (visto che probabilmente non è stata generata).
    Eclipse con il plugin per android, la genera in automatico.
    Senza Eclipse in realtà l' "ant debug" fa tutto senza problemi da solo. Al massimo ogni tanto le directory bin e gen non si ricreano con tutti i dati corretti e bisogna svuotarle. Prova a vedere a fare così...
    Senza Eclipse e senza ant invece non so come si fa, si scriverà il bytecode direttamente a pennarello
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  6. #5
    Senior Droid


    Registrato dal
    Dec 2009
    Messaggi
    307

    Ringraziamenti
    15
    Ringraziato 40 volte in 39 Posts
    Predefinito

    Quote Originariamente inviato da Cymon Visualizza il messaggio
    Senza Eclipse in realtà l' "ant debug" fa tutto senza problemi da solo. Al massimo ogni tanto le directory bin e gen non si ricreano con tutti i dati corretti e bisogna svuotarle. Prova a vedere a fare così...
    Senza Eclipse e senza ant invece non so come si fa, si scriverà il bytecode direttamente a pennarello
    Mi sa che lui non sta usando né Eclipse né Ant!

  7. #6
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da Orochi Visualizza il messaggio
    Mi sa che lui non sta usando né Eclipse né Ant!
    Il che lo renderebbe automaticamente il mio mito
    Perché vabbè essere spartani a sviluppare, ma persino io ho dei limiti
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  8. #7
    Androidiano


    Registrato dal
    Aug 2010
    Messaggi
    84

    Ringraziamenti
    2
    Ringraziato 1 volta in 1 Post
    Predefinito

    Ragazzi,
    stò usando eclipse con l'apposito plugin per Android, avevo dimenticato di dirvelo

  9. #8
    Androidiano


    Registrato dal
    Aug 2010
    Messaggi
    84

    Ringraziamenti
    2
    Ringraziato 1 volta in 1 Post
    Predefinito

    Quote Originariamente inviato da Cymon Visualizza il messaggio
    E' ancora più banale...
    Perché scomodare resources per recuperare la stringa? getString(int resid) è già un metodo di Context quindi di Activity e quindi della tua classe.
    Un semplice:

    String message = getString(R.string.message);

    dovrebbe funzionare, come riporta anche qui

    Credo che il tuo codice scoppi perché, per quanto legittimo, Resourcers ha bisogno dei riferimenti al package per andare a cercare le risorse, quindi forse dovresti esplicitarglielo...
    Allora...perchè scomodare resources...perchè è un esempio proprio su come usare resources.

    Ora provo a fare come mi hai consigliato te comunque e ti faccio sapere se funziona...

    Per approfondire meglio l'argomento resources invece...come dovrei fare ad esplicitargli il package?

    Grazie
    Andrea

  10. #9
    Baby Droid


    Registrato dal
    Aug 2010
    Messaggi
    6

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    magari dico una fesseria, ma non dipende semplicemente dal fatto che il tuo xml si chiama strings.xml e tu invece cerchi di accedere tramite R.string.message (senza S)??

  11. #10
    Androidiano


    Registrato dal
    Aug 2010
    Messaggi
    84

    Ringraziamenti
    2
    Ringraziato 1 volta in 1 Post
    Predefinito

    Quote Originariamente inviato da assurda77 Visualizza il messaggio
    magari dico una fesseria, ma non dipende semplicemente dal fatto che il tuo xml si chiama strings.xml e tu invece cerchi di accedere tramite R.string.message (senza S)??
    mi pare di aver provato anche così e non funzionava...ora stò provando a rifare da 0...se qualcuno ne sà qualcosa e mi illumina gliene sarei molto grato

Pagina 1 di 2 12 ultimoultimo
Ultima pagina

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