我正在尝试将视图置于父RelativeLayout
中:
private void addLoadingAnimation() {
RelativeLayout mainView = (RelativeLayout) findViewById(R.id.medical_supply_tile_activity);
mainView.removeAllViews();
GifView gifView = new GifView(this);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
layoutParams.addRule(RelativeLayout.CENTER_IN_PARENT);
gifView.setId(R.id.loading_gif);
mainView.setBackgroundColor(getResources().getColor(android.R.color.background_light));
mainView.addView(gifView,layoutParams);
}
我还尝试在layoutParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT, 0);
行之前添加CENTER_IN_PARENT
。似乎没有什么工作。它始终与右下角对齐。
这是我的父视图:
<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:background="@android:color/background_light"
tools:context=".MedecineTileActivity"
android:id="@id/medical_supply_tile_activity"
android:layout_gravity="left">
</RelativeLayout>
gravity=left
是因为当删除加载动画时,我插入片段并希望它们向左移动。
答案 0 :(得分:0)
我通过TextViews和ImageViews实现了这一点,将子视图右侧与父级右侧对齐,并将子视图左侧与父级左侧对齐。
<TextView
style="@style/NewTextM2"
android:id="@+id/soft_dialog_info_item_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/<Parent>"
android:layout_alignLeft="@+id/<Parent>"
android:layout_alignRight="@+id/<Parent>"
android:gravity="center"
android:tag="item_text"
android:text="@string/text"
android:maxLines="1" />
这会将视图与父级的底部中心对齐。