Quando uso un RelativeLayout
sia con fill_parent
o wrap_content
come altezza e un elemento che specifica: android:layout_alignParentBottom="true"
viene ignorato e viene allineato in alto. L'impostazione dell'altezza di RelativeLayout
su un valore esplicito lo rende funzionante. Qualche indizio?android: layout_alignParentBottom viene ignorato se viene usato senza altezza la layout esplicito come una riga in ListView
risposta
Questo sembra essere un bug in Android stesso, vedere http://code.google.com/p/android/issues/detail?id=1394.
ho lavorato intorno ad esso avvolgendo la mia RelativeLayout
in un FrameLayout
e mettendo la mia vista inferiore allineato come figli della FrameLayout
con android:layout_gravity="bottom"
. Questo ti impedisce di farne riferimento all'interno dello RelativeLayout
, quindi dovrai ovviare a questo (ad esempio usando i margini).
Se qualcuno ha una soluzione migliore, si prega di condividere.
Quando si gonfia il layout, utilizzare inflate(R.layout.whatever, parent, false)
, dove parent
è ListView
. Se non lo fai (ad esempio, superi il numero null
per il genitore), RelativeLayout
diventa strano nelle righe dell'elenco.
Ancora non riesco a farlo funzionare. Sto usando CursorAdapter e in newView() ora ho: Visualizza v = inflater.inflate (ROW_RESOURCE, postList, false); – alexanderblom
Ecco un progetto da uno dei miei libri che utilizza 'RelativeLayouts' nelle righe: http://github.com/commonsguy/cw-advandroid/tree/master/Introspection/Launchalot/ - vedi se questo ti dà qualche indizio su dove le cose potrebbero andare storte per te. – CommonsWare
Sembra questo: http://code.google.com/p/android/issues/detail?id=1394. Non riparato su 1.6. Impostare un'altezza fissa non è un'opzione in quanto l'altezza deve essere variabile. Qualche buona soluzione alternativa? O sono costretto a creare il proprio layout personalizzato: C – alexanderblom
sono stato in grado di ottenere il corretto allineamento specificando l'TextView problematico con:
android:id="@+id/must_be_bottom_left"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:layout_below="@id/xxx"
dove xxx
era l'id di una TextView
che ha android:layout_below="@id/yyy"
e yyy
è un TextView
che è sempre al di sopra entrambi xxx
e must_be_bottom_left
.
Il contenuto degli elementi della mia lista può variare in modo che a volte "01xxxx" TextView
è View.GONE
, ma anche in questo caso il layout funziona come previsto.
Non so quanto sia fragile o semplicemente seredipidico questo work-around. Sto usando Android 1.6 e non l'ho testato per compatibilità diretta.
mio mod per questo Andriod bug:
ViewGroup.LayoutParams lp=(ViewGroup.LayoutParams)view.getLayoutParams();
lp.height=view.getContentHeight();//hack for android bug about ViewGroup.LayoutParams.WRAP_CONTENT and android:layout_alignParentBottom="true" on landscape orientation
view.requestLayout();
act.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
- 1. Android "layout_alignParentBottom" nel layout relativo
- 2. Altezza dinamica per riga ListView in Android
- 3. Minima ExtJ Viene ignorato
- 4. Application.mk viene ignorato da Android Studio
- 5. EXTRA_VIDEO_QUALITY viene ignorato
- 6. make: $ LD_RUN_PATH viene ignorato
- 7. cache viene ignorato
- 8. ListView con layout riga personalizzato - Android
- 9. Twitter oauth_callback parametro viene ignorato!
- 10. per cosa viene usato ids.xml?
- 11. In che modo Android determina se spostare il layout quando viene visualizzato il softkey?
- 12. Perché viene usato suhosin?
- 13. jQuery XmlHttpRequest Cache-Control viene ignorato
- 14. Lo storyboard localizzato viene ignorato (?)
- 15. mergetool da .gitconfig viene ignorato?
- 16. ErrorMessage viene ignorato in DataAnnotations DataType attributo
- 17. Perché in questo caso ConnectTimeout viene ignorato?
- 18. Perché questo layout pieno altezza CSS non viene visualizzato correttamente?
- 19. Perché layout_marginBottom viene ignorato quando si utilizza wrap_content?
- 20. nuget.config viene ignorato, in particolare il repositoryPath
- 21. Android ListView altezza fissa articolo
- 22. Posizionare ViewPager come una riga in ListView
- 23. Come ottenere la larghezza/altezza di un layout in Android
- 24. Il video non viene riprodotto correttamente con listview in android
- 25. asp: RadioButtonList 'RepeatLayout' viene ignorato tramite CDN
- 26. Il file di convalida YML viene ignorato
- 27. ListView Android con layout diversi per ogni riga
- 28. Layout colonna flessibile CSS senza altezza specificata
- 29. Il divisore di ListView non viene visualizzato in Android 5
- 30. C Valore # viene dichiarata ma mai usato
Ho avuto lo stesso problema e sembra essere a causa di quell'errore. È fisso in Froyo ma non in Eclair. – simao
Ecco una soluzione alternativa, ho appena pubblicato http://code.google.com/p/android/issues/detail?id=1394#c16 – Vadim