android - 将两个视图放在屏幕中央
问题描述
我有两个视图(com.github.mikephil.charting.charts.BarChart 和 LinearLayout),一个视图内的内容大约 600 dp 高,另一个曾经有 500 dp。两个视图的宽度都是 fill_parent。
我想将它们都放在屏幕的中心(所以它们重叠)。
不幸的是,Android 的布局对齐非常不直观,对我来说是命中注定的,我无法做到这一点。
你能帮忙吗?
<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>
我想将两个视图都放置在屏幕中心的这个 RelativeLayout 内,重叠
解决方案
将要放置在中间的 2 个视图放入 aRelativeLayout
中,然后添加android:layout_centerInParent="true"
到 2 个视图中。
例如,它看起来像这样:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.github.mikephil.charting.charts.BarChart
....all other stuff
android:layout_centerInParent="true" > //..add this
<LinearLayout
..... all other stuff
android:layout_centerInParent="true" > //..add this
</LinearLayout>
</RelativeLayout>
推荐阅读
- sql - 如何防止无效数据插入SQL
- python - 使用 numpy 加载数据文件时出现问题
- xamarin.forms - Xamarin.Forms / Xamarin.Android 的任何插件用于选择目录以保存文件?
- c# - 以自动方式满足条件后的实体框架更新字段
- java - 如何必须根据彼此排列列表
- ios - 将数字添加到数组值时,由于执行期间出错,命令缓冲区的 Swift Metal Shader 执行被中止
- discord - 如果用户切换语音频道,则向频道发送消息
- octobercms - 如何在十月 CMS 中向用户发送密码?
- excel - 所有工作表中的宏保护,但仅适用于具有某些值的单元格
- matlab - 在 MATLAB 中为图像添加颜色映射