水平方向の中央に重なった一連のトランプを持つレイアウトを作成しようとしています。オーバーラップは機能しますが、カードが中央に配置されていません。カードの周りに境界線を引くと、相対的なレイアウトには、負のマージンが適用されていない場合に使用されるすべての領域が含まれているように見えます。次に、この合計領域が中央に配置されます。
相対的なレイアウトの範囲が、トランプの ImageViews を含む領域だけであることを確認して、トランプを水平方向に中央揃えできるようにするにはどうすればよいですか?
これは RelativeLayout の定義です
<RelativeLayout
android:id="@+id/tNorth"
android:layout_width="wrap_content"
android:layout_height="100dp"
android:layout_above="@+id/vCardTable"
android:layout_centerHorizontal="true"
android:layout_marginLeft="10dp"
android:layout_marginTop="15sp"
android:background="@drawable/losing_border"
android:layout_marginBottom="15sp" >
</RelativeLayout>
これがコードです
final RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
if (isMiddle) {
params.addRule(RelativeLayout.CENTER_HORIZONTAL);
}
if (previousCard != null) {
params.addRule(RelativeLayout.RIGHT_OF, previousCard.getId());
params.setMargins(-pxPadding, 0, 0, 0);
}