9

L'applicazione dispone attualmente di tabulazioni e barra su misura (dal precedente) da frammenti per copiare il gatto di design Apple.Implementazione di una barra delle azioni: ABSherlock o ABCompat?

voglio spostare verso barra delle azioni di Android per offrire l'esperienza di Android e il comportamento abituale.

Devo attuare l'azione Bar Sherlock o Barra azioni Compat?

Pro ABS:

  • Un sacco di documentazione
  • bar azione Tabs è ben noto (questo è quello che ho bisogno di fare)
  • Chi Holo tema? ABS è fantastico per supportarlo, come funziona ABCompat?

Pro ABCompat:

  • Supportato da Google (meglio nel lungo periodo?)
  • migliore connessione con cassetto di navigazione (ma non voglio usare uno)
  • dipendenze esterne in Java costruire il percorso

Quali argomenti altri ti aiuti a decidere? Quale dovrei scegliere?

Dal mio punto di vista, a condizione che riesca a fare una barra delle azioni con schede fisse, la compatibilità con Action Bar è la scelta migliore (ma non di molto).

Grazie per avermi aiutato! (Anche fornendo argomenti ho perso)

risposta

7

Il motivo principale che mi ha spinto a passare a ActionBarCompat è l'apparizione del menu nei dispositivi con Android < = 2.3. Con ActionBarSherlock, il menu appare molto brutto, con il menu predefinito del dispositivo. Con ActionBarCompat, il menu appare allo stesso modo in cui appare quando lo apri nei dispositivi con Android> = 4.0 e la chiave del menu hardware.

Tuttavia, tenere presente che ActionBarCompat ha ancora alcuni bug da risolvere. Ho a che fare con questo bug:

SearchView taking all the space in the new ActionBarCompat

UPDATE:

altro bug:

https://code.google.com/p/android/issues/detail?id=58321&thanks=58321&ts=1375277660

UPDATE:

Ho creato una versione modificata del ActionBarCompat per risolvere il problema con ActionMode. Vedi qui:

The ActionMode is being created twice with the ActionBarCompat r18

+0

Ok, grazie per l'informazione! Avevo già visto il tuo problema (dal momento che stavo cercando il primo feedback su ABCompat) – Poutrathor

+0

Ho appena trovato un altro bug. Bene, il mio consiglio è: non essere un early adopter come me. Ogni giorno trovo un nuovo bug che interrompe la mia app. L'unica ragione per cui non torno ad ActionBarSherlock è il menu per le vecchie versioni. –

+0

"Non essere uno dei primi ad adottare", devo implementare un'azioneBar ora (finendo presto lo stage). In quanto tempo l'ABSherlock inizierà a mostrare debolezza a causa del basso supporto? In questo momento, non c'è una vera barra di azione nella mia applicazione. Pensi che dovrei lasciare che ActionBarCompat maturi e andare per ABS, o dato che non si tratta di ** migrare ** è meglio andare per ABCompat? – Poutrathor

6

I motivi per cui ho migrato la mia app da ABS a Barra azioni Compat sono stati i seguenti:

  1. ho solo un'implementazione di base di schede della barra delle operazioni e ho potuto vedere sarebbe semplice migrare

  2. io preferisco la documentazione di Google - è più chiara e completa

  3. manutenzione Software sarà più semplice e meno soggetto a errori perché ora non ho esterni dipenderà encies.

  4. Ho avuto un problema con l'ABS per cui volevo gestire un cambio di orientamento (ma non è possibile a causa del modo in cui l'ABS si aggancia ad Android).

  5. non ho visto alcuna dichiarazione da nessuno legati ABS circa i loro piani a lungo termine per l'ABS. Quindi non sono convinto che continueranno a sostenerlo. Potrei sbagliarmi, ma non ho visto nulla.

  6. Le prestazioni non rappresentano un problema per me, ma non riesco a capire perché l'implementazione "nativa" di Google sia più lenta di ABS e ho il sospetto che potrebbe funzionare meglio.

Queste sono solo le mie impressioni personali.

+0

Grazie! Cibo per la mente! – Poutrathor

1

penso che ActionBarSherlock era un brillante pezzo di lavoro, e un ottimo servizio per gli sviluppatori di Android. (A proposito, non ho condivisioni con Jake Wharton, il suo sviluppatore.) Google ha pagato il miglior complimento possibile includendo qualcosa che essenzialmente la stessa cosa essenzialmente nello stesso modo (per quanto posso dire) nella v7 libreria di supporto.

Ma ora che la funzionalità è ufficialmente supportata, si applicano alcuni argomenti standard su quale scegliere.

ActionBarSherlock è una dipendenza di terze parti, che rappresenta un rischio in termini di supporto continuo. A meno che non faccia qualcosa di cui hai veramente bisogno non è fatto da ActionBarCompat, o quest'ultimo ha un bug che non puoi aggirare o aspettare una correzione, c'è ben poca argomentazione a favore dell'aderire al primo.

Recentemente ho eseguito la migrazione da ActionBarSherlock a ActionBarCompat e ho trovato solo uno o due problemi minori, il principale è che era necessaria una piccola modifica alle immagini di serie 9 utilizzate per gli sfondi dell'indicatore della barra delle azioni, al fine di produrre il comportamento della scheda standard nelle precedenti versioni di Android, nel mio caso 2.2 == API level 8 == Froyo. (Specificamente ho regolato le regioni estensibili verticali in modo che non fossero adiacenti né al bordo superiore né alla barra degli indicatori colorati nella parte inferiore dell'immagine.)

+0

yup Sono totalmente d'accordo su ActionBarSherlock. Terrò presente i tuoi problemi se incontrassi quelli simili. – Poutrathor

Problemi correlati