Ho un'applicazione che utilizza i frammenti. Su uno dei dispositivi di mio utente (HTC One), i frammenti si sovrappongono l'un l'altro e il suo schermo finisce per sembrare un pasticcio:Le schermate dei frammenti di Android si sovrappongono a
Ho cercato di riprodurlo sul mio hardware, anche se è non l'HTC One. Ho anche provato ad usare la versione 4.1.2 di Android, che è la versione che ha e funziona bene. A corto di corsa a comprare un HTC One, qualcuno ha qualche suggerimento?
Quando aggiungo nel nuovo frammento, faccio questo layout
Fragment f = new MyFragment();
FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
ft.replace(R.id.mainContent, f);
ft.addToBackStack(null);
ft.commit();
mio XML (tagliato fino a parti rilevanti):
<RelativeLayout>
<LinearLayout>
<!-- My home screen content is here -->
</LinearLayout>
<!-- This is where the fragment gets placed -->
<LinearLayout android:id="@+id/mainContent"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
</LinearLayout>
</RelativeLayout>
UPDATE
Il frammento che viene aggiunto ha questo layout:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:background="@drawable/app_bg"
tools:context=".DeviceListActivity" >
<!-- snipped! (for brevity) -->
</RelativeLayout>
Ho giocato in giro - ho notato che se rimuovo l'androide: background posso riprodurre il problema che mi porta a credere che l'HTC One stia causando l'ignizione della proprietà di background del frammento per qualche motivo.
L'HTC One utilizza le risorse xxhdpi, li fornite? Sembra che possa essere correlato. – Dalmas
@Dalmas, che non causerebbe problemi di layout, causerebbe problemi di risorse, ovvero la risorsa errata caricata. –