J'ai deux vues (com.github.mikephil.charting.charts.barchart et linearlayout), le contenu à l'intérieur d'une vue est d'environ 600 DP de haut, l'autre a une fois de 500 dp. La largeur des deux vues est Fill_Parent.
Je voudrais les positionner à la fois au centre de l'écran (ils se chevauchent donc). P>
Malheureusement, l'alignement de la mise en page d'Android est très inincupé et frappé pour moi et je ne suis pas capable de réaliser cela. p>
pouvez-vous s'il vous plaît aider? p>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:orientation="vertical"
android:background="#11FFFFFF">
<com.github.mikephil.charting.charts.BarChart
android:id="@+id/chart"
android:layout_width="match_parent"
android:layout_height="500dp"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:gravity="center">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="50dp"
android:orientation="vertical"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFF"
android:textSize="150dp"
android:includeFontPadding="false"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="HITS"
android:textAppearance="?android:attr/textAppearanceLarge"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="50dp"
android:orientation="vertical"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFF"
android:textSize="150dp"
android:includeFontPadding="false"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="MISSED"
android:textAppearance="?android:attr/textAppearanceLarge"/>
</LinearLayout>
</LinearLayout>
</RelativeLayout>
3 Réponses :
Mettez dans les 2 vues que vous souhaitez placer dans le centre à l'intérieur d'un relativenelayout code>, ajouter android: layout_centerinparent = "vrai" code> dans les 2 vues.
beau frère..hyppy coding
Définissez votre mise en page principale comme avec ce code, votre barchart est au-dessus de votre linearlayout. P> p> contraintlayout code>, puis contraint tous les deux éléments à leur parent.
Quelque chose comme ceci:
Dans mon expérience, c'est la plupart du temps que la meilleure pratique d'utiliser le récipient le plus léger possible, ce qui est probablement un framelayout code>, donc je l'utiliserais au lieu de relativenelayout code > et utilisez Android: Layout_gravity = "Centre" code> Dans la sous-sousviews similaire à celui-ci par exemple:
Pouvez-vous publier votre code XML aussi pour cette 2 vue ??