2012-12-27 12 views
24

Sono totalmente nuovo per Android, sto cercando di implementare Sliding Menu having ListView with Swipe Gesture, da qualche ricerca ho trovato che https://github.com/jfeinstein10/SlidingMenu è esattamente quello che voglio,esatta procedura per aggiungere "jfeinstein10/SlidingMenu" nel progetto Android

ci sono molti domande relative a questo che guidano l'integrazione di questa libreria con il progetto, ma nessuna di queste è per una persona nuova come me. anche la procedura data su github non è dettagliata, tutto quello che so è come aggiungere file .jar ma questo .zip e altre cose sono totalmente nuove per me

Questo è quello che ho fatto fino ad ora;

  1. zip scaricato dal link qui sopra
  2. Estratto che puntano a cartella
  3. in Eclipse File-> importazione-> progetto esistente nel mondo del lavoro-spazio ..

Ora mi sta mostrando molti errore nel pacchetto library.src.com.slidingmenu.lib.app

es

The declared package "com.slidingmenu.lib.app" does not match the expected package "library.src.com.slidingmenu.lib.app"

ora non so cosa fare ...

per favore mi guida qualcuno con una corretta procedura dettagliata di come integrare e usare questa libreria nel progetto.

Grazie!

+0

Quale versione di eclissi stai usando? –

+0

@Saurabh Bayani eclissi ganimede – john44

risposta

40

Beh, aver trascorso 3 giorni con lo stesso problema che ho trovato la procedura esatta per questa cosa. La guida su github non è ovviamente per ragazzi di livello base come noi, inoltre non esiste un "tutorial passo passo" per questo, quindi ci è voluto del tempo.

Importante: non ho incluso "Sherlock ActionBar" libreria, perché voglio mantenere le cose semplici

  • Prima su tutte aggiornare il vostro Eclipse per ultimo ADT o miglior modo è possibile scaricare thisADT Bundle, e confermare che tutto sta andando bene nel nuovo ADTBundle.

  • Scarica il file "zip for jfeinstein10/SlidingMenu" da "gitHub" ed estrailo ovunque desideri. Dopo l'estrazione deve avere questi file e cartelle all'interno.

Folder after extracting library

  • Ora apri il tuo eclissi File -> Import -> Android -> Existing Android Code Into Workspace, Passare alla cartella molto probabilmente "SlidingMenu-master" e si dovrebbe vedere seguente

enter image description here

Hit Finish, se eclissi mostra qualche errore come Unable to resolve target th Cambia il tuo obiettivo tramite Right Click on project -> Properties -> Android e controlla qualsiasi google API più recente dell'SDK.

  • Aggiungi Dependency, facendo clic destro su project -> properties -> android -> library -> add -> SlidingMenuActivity, e Clear entrambi i progetti.

  • Aggiungi nuovo layout XML denominato come menu_frame nel vostro res -> layout e messo dopo in esso Put Frame Layout e list view in esso.

  • Aggiungere anche un ListView nel file XML mainActivity.

  • Ora è il momento di creare "Menu" scrivere il codice seguente nel onCreate() dopo setContentView(R.layout.activity_main).

    SlidingMenu menu; 
    menu = new SlidingMenu(this); 
    menu.setMode(SlidingMenu.LEFT); 
    menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); 
    menu.setShadowWidth(5); 
    menu.setFadeDegree(0.0f); 
    menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT); 
    menu.setBehindWidth(200); 
    menu.setMenu(R.layout.menu_frame); 
    
  • Alle linee sta mostrando errore di stampa ctrl+1 e l'importazione com.slidingmenu.lib.SlidingMenu; "

  • eseguire il progetto e si dovrebbe vedere il menu che esce dal lato sinistro

  • Ora il prossimo compito è quello di aggiungi adapter e listener per entrambe le tue ListViews (cioè per la schermata principale e Menu)

Per informazioni sulla funzione utilizzata durante la creazione di Menu è possibile fare riferimento alle app di esempio fornite con la libreria o su google, sono disponibili molte informazioni.

anche grazie a "Jeremy Feinstein" per una grande biblioteca come

+0

@ Saurabh Bayani, grazie!Questo è quello che sto cercando esattamente – john44

+0

Ciao, carri armati per tutorial, come posso aggiungere oggetti e Listner per ListViiew (Menu) è possibile nell'attività principale? – mahdi

+2

@mahdi, si! è possibile. listview nel tuo Menu è trattato come una normale lista-vista che hai sulla tua attività. Quindi la procedura è la stessa, basta google per aggiungere listener a listview e sostituire il nome di quella list-view con la tua lista-view, e il gioco è fatto! –

0

Credo che il pacchetto sia stato importato con un nome di pacchetto diverso.

Il pacchetto dichiarato "com.slidingmenu.lib.app" non corrisponde al pacchetto "library.src.com.slidingmenu.lib.app" atteso

Rinomina dal com.slidingmenu .lib.app a library.src.com.slidingmenu.lib.app e vedere se questo risolve il problema.

0

è necessario importare solo il progetto all'interno della cartella "library"

+0

Puoi essere un po 'più specifico? Voglio dire ci sono molte cartelle in quella cartella zip, quale dovrei importare nella mia cartella lib? – john44

+0

come ti ha detto @ john44, decomprimi lo SlidingMenu da jFeinStein e importa solo la cartella "library" dalla cartella decompressa. Definirlo come una biblioteca nei propreties e importarlo nel tuo progetto. Potrebbe essere utile, per importare anche l'Esempio per una migliore comprensione delle diverse possibilità, ma per essere vero, per l'inizio Potrebbe essere troppo confuso e migliore per seguire la strada spiegata in alto. –

0

io uso questo codice per aggiungere elementi ai miei ListViews (menu & schermata principale), ma `s lavoro solo per la schermata principale

final Context context = this ; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    ListView lv = (ListView) findViewById(R.id.listView1); 
    String[] items = new String[]{"xxx","xxx","xxx","xxx"}; 
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(context ,android.R.layout.simple_list_item_1, android.R.id.text1, items); 
    lv.setAdapter(adapter); 

    LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    View view = inflater.inflate(R.layout.menu_frame, null); 
    ListView lv2 = (ListView) view.findViewById(R.id.listView2); 
    TextView tv2 = (TextView) view.findViewById(R.id.textView2); 
    tv2.setText("Hello Mahdi"); 
    String[] items2 = new String[]{"xxx","xxx","xxx","xxx"}; 
    ArrayAdapter<String> adapter2 = new ArrayAdapter<String>(context ,android.R.layout.simple_list_item_1, android.R.id.text1, items2); 
    lv2.setAdapter(adapter2); 


    SlidingMenu menu; 
    menu = new SlidingMenu(this); 
    menu.setMode(SlidingMenu.LEFT); 
    menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); 
    menu.setShadowWidth(5); 
    menu.setFadeDegree(0.0f); 
    menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT); 
    menu.setBehindWidth(200); 
    menu.setMenu(R.layout.menu_frame); 
} 
+0

Prova ad aggiungere gli adattatori dopo 'menu.setMenu()'. – guanabara

+0

@mahdi puoi spiegarlo ulteriormente, sto cercando qualcosa di simile ma non riesco a ottenerlo .. –

Problemi correlati