android - 绘制 match_parent 的垂直线
问题描述
我创建了一个这样的界面
这是我的 XML 代码
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFA5"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="Team A"
android:textColor="#f00"
android:textSize="30dp" />
<TextView
android:id="@+id/team1_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="30dp"
android:layout_marginTop="30dp"
android:text="0"
android:textSize="45sp" />
<Button
android:id="@+id/btn_3_point_a"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp"
android:onClick="threePointA"
android:text="+3 Points" />
<Button
android:id="@+id/btn_2_point_a"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="10dp"
android:onClick="twoPointA"
android:text="+2 Points" />
<Button
android:id="@+id/btn_1_point_a"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:onClick="onePointA"
android:text="Free Throw" />
</LinearLayout>
<View
android:layout_width="2dp"
android:layout_height="340dp"
android:layout_margin="3dp"
android:background="#000" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="Team B"
android:textColor="#00f"
android:textSize="30dp" />
<TextView
android:id="@+id/team2_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="30dp"
android:layout_marginTop="30dp"
android:text="0"
android:textSize="45sp" />
<Button
android:id="@+id/btn_3_point_b"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp"
android:onClick="threePointB"
android:text="+3 Points" />
<Button
android:id="@+id/btn_2_point_b"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="10dp"
android:onClick="twoPointB"
android:text="+2 Points" />
<Button
android:id="@+id/btn_1_point_b"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:onClick="onePointB"
android:text="Free Throw" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:id="@+id/btn_1_point_b"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:onClick="reset"
android:text="RESET" />
</LinearLayout>
</LinearLayout>
</android.support.constraint.ConstraintLayout>
我的问题是我必须硬编码两个分数之间的“线”
<View
android:layout_width="2dp"
android:layout_height="340dp"
android:layout_margin="3dp"
android:background="#000" />
因为当我将android:layout_height="match_parent"
它设置为全屏时,我认为这是因为父母 height="wrap_content"
解决方案
尝试这个 :
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFA5"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="Team A"
android:textColor="#f00"
android:textSize="30dp" />
<TextView
android:id="@+id/team1_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="30dp"
android:layout_marginTop="30dp"
android:text="0"
android:textSize="45sp" />
<Button
android:id="@+id/btn_3_point_a"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp"
android:onClick="threePointA"
android:text="+3 Points" />
<Button
android:id="@+id/btn_2_point_a"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="10dp"
android:onClick="twoPointA"
android:text="+2 Points" />
<Button
android:id="@+id/btn_1_point_a"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:onClick="onePointA"
android:text="Free Throw" />
</LinearLayout>
<View
android:layout_width="2dp"
android:layout_height="match_parent"
android:layout_margin="3dp"
android:background="#000" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="Team B"
android:textColor="#00f"
android:textSize="30dp" />
<TextView
android:id="@+id/team2_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="30dp"
android:layout_marginTop="30dp"
android:text="0"
android:textSize="45sp" />
<Button
android:id="@+id/btn_3_point_b"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp"
android:onClick="threePointB"
android:text="+3 Points" />
<Button
android:id="@+id/btn_2_point_b"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="10dp"
android:onClick="twoPointB"
android:text="+2 Points" />
<Button
android:id="@+id/btn_1_point_b"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:onClick="onePointB"
android:text="Free Throw" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:id="@+id/btn_1_point_b"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:onClick="reset"
android:text="RESET" />
</LinearLayout>
</LinearLayout>
</android.support.constraint.ConstraintLayout>
制作前两个线性布局 wrap_content
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFA5"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
并使视图 match_parent
<View
android:layout_width="2dp"
android:layout_height="match_parent"
android:layout_margin="3dp"
android:background="#000" />
推荐阅读
- react-native - 如何阅读联系人 - 反应原生
- node.js - 使用 nginx 限制单个 websocket 连接
- php - 使用 Laravel单击元素时仅更改页面的一部分?
- mysql - 求和子集查询
- go - 如何使用 kubernetes client-go 将文件复制到容器?
- ruby-on-rails - 您如何在活动记录中围绕一个时间段进行分组,但每个用户只计算一次出现?
- python - 无法将页面从主页转移到关于页面
- javascript - 自动删除 Chart.js 中的旧数据点
- visual-studio-code - VS Code - 更改预测匹配字体颜色
- php - 按特定键的内部数组的值对 PHP 二维数组进行排序