2010-09-11 15 views
18

Facile.Android - Creazione di una nuova attività in Eclipse

Ho seguito alcune guide e tutorial e sono abbastanza chiari su come avviare un'attività (con intento).

Tuttavia, come si crea una nuova attività in Eclipse? Probabilmente posso farlo a mano, ma poi devo modificare il file R, che viene generato automaticamente e aggiungere un nuovo layout xml.

+7

Si dovrebbe 'mai' modificare la classe R a mano. – Macarse

+0

Possibile dup: http://stackoverflow.com/questions/2337874/best-way-to-add-activity-to-an-android-project-in-eclipse –

risposta

56

Ok. Essendo io stesso un principiante, penso che le due risposte precedenti stiano pensando troppo. Sta chiedendo molto semplicemente come creare una nuova attività in Eclipse .. Penso che questo sia quello che vuole:

Un nuovo Activity in Eclipse è in realtà un Class.

Dovresti fare doppio clic su "src" sul lato sinistro in Esplora pacchetti, quindi evidenziare "com". nome, tasto destro, selezionare "Nuovo" e quindi selezionare "Classe". Immettere Name come NewActivity e impostare Superclass su android.app.Activity, quindi premere Fine.

Quando il file si apre NewActivity.java dovrebbe assomigliare a questo:

package com.example.yourappname; 

import android.app.Activity; 

public class NewActivity extends Activity { 

} 

è possibile lasciare la Superclass vuoto e aggiungere extends Activity al codice stesso, se si preferisce.

Il passaggio finale è l'aggiunta dell'attività al tuo manifest. Quindi fai doppio clic su AndroidManifest.xml per aprirlo e quindi fai clic sulla scheda "Applicazione" in basso. Accanto alla casella "Nodi applicazione", fai clic su "Aggiungi". Evidenzia "Attività" (la casella quadrata con la A maiuscola) e fai clic su "OK". Ora cerca la casella "Attributi per attività" e inserisci un nome per l'attività e precedila di un punto. In questo esempio inseriresti ".NewActivity".

E poi si può aggiungere il codice onCreate() in modo che assomiglia a questo:

public class NewActivity extends Activity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) {   

     super.onCreate(savedInstanceState);  
     setContentView(R.layout.main_view); 
     //rest of the code 
    } 
} 

main_view sarebbe il file xml vista principale, main_view.xml, che è necessario creare nella directory layout.

Per chiamare la nuova attività, il vostro Intent nel codice (in un diverso Attività) per iniziare una nuova Activity sembra qualcosa di simile:

Intent startNewActivityOpen = new Intent(PresentActivity.this, NewActivity.class); 
startActivityForResult(startNewActivityOpen, 0); 

E questo è tutto, si ha il codice per chiamare il nuovo attività e l'hai creata. Spero che questo aiuti qualcuno.

+0

Perfetto grazie, il tasto destro del mouse/nuova classe è quello che mi mancava. Sembra anche che eclissi ti permetta di creare automaticamente una nuova classe se la fai riferimento senza che venga prima definita. Ho anche usato la schermata GUI manifest per modificare l'xml, bello e veloce. –

+0

@ShadowGod: la tua risposta è utile ma si tratta di registrare nuove attività. Puoi dirmi come posso creare 'layout xml' per questa nuova attività (proprio come main.xml). –

+2

@ShadowGod Questa è una bella risposta esaustiva, ma se usi la procedura guidata "Nuovo" di Eclipse, creerà per te la nuova classe e il layout di Activity, e aggiungerai anche le voci richieste al file AndroidManifest.xml del progetto. È sicuramente il modo migliore e più semplice per farlo. – Argus9

5

Si crea l'attività estendendo la classe di attività. Una volta che avete creatd la classe di attività, è necessario aggiungere l'attività nel file AndroidManifest specificare le proprietà per l'attività ...

Un campione uno sarebbe qualcosa di simile ...

<activity android:name=".JsonActivity" android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

Il l'azione qui indica che è quella che inizia per primo ..

Non penso che sia necessario modificare il file R.java ... Una volta che li aggiungi nel file manifest Android e lo salvi automaticamente viene aggiornato. Anche le cose che u aggiunti come i layout, menu, stringhe, etcc di id .... nei vari file XML anche ottenere automaticamente aggiornati ...

correggetemi se sbaglio ...

+0

Grazie, provo. Come collego il file di layout xml all'attività specifica? –

+0

Grazie, non ha mostrato la prima volta perché la prima lettera era una capitale! Devo amare java;) –

0

Ci è anche il metodo collaudato di iniziare con uno dei campioni e andare da lì.

Il tutorial Hello è un buon punto di partenza, basta selezionare l'opzione di creazione da campione esistente.

L'ultimo aggiornamento del plug-in di eclissi include anche uno strumento per rinominare il pacchetto se si cambia idea, anche se non l'ho ancora utilizzato, quindi non si può dire se funzioni. (Fare clic con il pulsante destro del mouse sul pacchetto, quindi selezionare Strumenti Android, Rinomina pacchetto applicazioni).

+0

Ho fatto il mondo Ciao, anche il mondo al di là ciao. In nessuna delle guide menzionano ciò che è "giusto" per creare una nuova attività. –

+0

Mi dispiace che avrei dovuto chiarire che intendevo usare come modello helloworld (o qualsiasi altro esempio se ha la funzionalità necessaria). In questo modo le risorse di base come il layout ecc. Sono già state create e collegate per te. Basta salvare un po 'di digitazione. (... e riduce le possibilità di sbagliare!) – FixerMark

+0

Ok capito, ma preferisco farlo manualmente questa volta, solo per capire. –

22

So che questa è una vecchia questione, ma so che ci sono ancora persone con questa stessa domanda (ho fatto fino ad oggi)

Se si aggiunge una nuova attività al vostro file manifesto, c'è un link speciale per fare clic su per creare automaticamente la nuova attività, completa con il metodo onCreate() pronto per essere compilato.

Aprire AndroidManifest.xml e accedere alla scheda "Applicazione". Sotto "Nodi applicazione", trova e fai clic sul pulsante "Aggiungi". Probabilmente creerai un nuovo elemento al livello più alto, quindi seleziona questa opzione, evidenzia "Attività" e premi OK.

Una volta creata l'attività, andare a "Attributi per attività" e inserire il nome. Una volta inserito il nome desiderato, fai clic sul link blu "Nome *" accanto al campo. Viene visualizzata la nuova procedura guidata per i file e tutto ciò che devi fare è premere OK.

Voilà! Nuova attività, registrata nel manifest e come una classe Java pronta per l'uso.

+0

Eccellente. Se hai intenzione di usare un IDE, potresti anche usarlo al massimo. – superluminary

0

È importante dire che se si digita il nome desiderato per la nuova casella Attività su nome, è necessario inserire un punto prima del nuovo nome. In caso contrario, la finestra per completare la creazione del codice Java non si aprirà quando si fa clic sul collegamento dei nomi.

4

Ho provato a cercare questa domanda su Google e non ho ancora visto questa soluzione, quindi ho pensato di pubblicarlo qui.

In Eclipse, è possibile fare clic sul pulsante "Nuovo" sulla barra degli strumenti. In Android, seleziona Attività Android ed esegui la procedura guidata. Questa è la soluzione migliore di gran lunga, dal momento che ti consente di impostare un layout e un'attività tutto in uno, aggiornando anche il Manifesto per te.

1

come aggiungere nuovi Eclipse attività passo dopo passo:

  1. Stpe1: Fare doppio clic sul AndroidManifest
  2. Passo 2: sulla barra dei menu del tasto Applicazione
  3. Fase 3: Scorrere verso il basso al nodo di applicazione e fare clic su pulsante aggiungere
  4. punto 4: cliccare selezionare Attività e Ok
  5. fase 5: clikka sul l'texte (Nome * Nota: fare sur u clik sul texte non nella casella di testo)
  6. step6: c'è una nuova finestra di dialogo Java Class
    ## Intestazione ## scrivi il nome della classe ## Intestazione ## controlla il costrutto checkbox dalla super classe e e ok ..
Problemi correlati