【发布时间】:2016-11-02 16:55:24
【问题描述】:
我正在尝试创建不同模式的CardViews,将它们水平和垂直对齐并将它们放在一个大LinearLayout中,以实现以下目的:
我已经创建了第一个和最后一个卡片视图,但是我在创建中间的卡片视图时遇到了麻烦,它们的所有功能都包括:垂直分隔线,以及第一个和第二个之间的水平分隔线边缘的切口卡片浏览量。
(**红色剪刀和蓝色圆圈是png的)
我愿意接受任何其他可能完成这个复杂的“GridView”类似 xml 代码的建议。
我添加了我的 xml 代码:
<?xml version="1.0" encoding="utf-8" ?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:background="@color/screen_backround_color"
android:orientation="vertical"
android:layout_weight="100">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="0dp"
android:background="@drawable/frame_border"
android:orientation="vertical"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:layout_marginTop="15dp"
android:layout_marginBottom="15dp"
android:layout_weight="90">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
card_view:cardCornerRadius="0dp"
card_view:cardElevation="0dp"
card_view:contentPadding="15dp"
card_view:cardUseCompatPadding="true"
android:id="@+id/MainFormFirstRow">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="2"
android:gravity="center_vertical"
android:orientation="horizontal">
<!--Model Name-->
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Model Name"
android:textColor="#ec1c24"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/editTextModelName"
style="@style/Base.TextAppearance.AppCompat.Body1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#666666"
android:textSize="30dp"
android:textStyle="bold"/>
</LinearLayout>
<!--Serial Number, IP Address, Version-->
<TableLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1">
<TableRow>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="15dp"
android:text="Model ID:"
android:textColor="#ec1c24"
android:textSize="14dp"
android:textStyle="bold"/>
<TextView
android:id="@+id/editTextModelId"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14dp"
android:textColor="#666666"/>
</TableRow>
<TableRow>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:text="IP:"
android:textColor="#ec1c24"
android:textSize="14dp"
android:textStyle="bold"/>
<TextView
android:id="@+id/editTextIPAddress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14dp"
android:textColor="#666666"/>
</TableRow>
<TableRow>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:text="BS Version:"
android:textColor="#ec1c24"
android:textSize="14dp"
android:textStyle="bold"/>
<TextView
android:id="@+id/editTextPLC"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14dp"
android:textColor="#666666"/>
</TableRow>
</TableLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
card_view:cardCornerRadius="0dp"
card_view:cardElevation="0dp"
card_view:contentPadding="15dp"
card_view:cardUseCompatPadding="true"
android:id="@+id/MainFormSecondRow">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="2"
android:gravity="center_horizontal"
android:orientation="horizontal">
<!--IOMapping1-->
<LinearLayout
android:id="@+id/tableRowIOMapping1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_horizontal"
android:orientation="horizontal">
<TextView
android:id="@+id/textViewIOMapping1"
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Temperature"
android:textColor="#6d6e70"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/editTextIOMapping1"
style="@style/Base.TextAppearance.AppCompat.Body1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#8bc53f"
android:textSize="30dp"
android:textStyle="bold"
android:enabled="false"/>
</LinearLayout>
<!--IOMapping2-->
<LinearLayout
android:id="@+id/tableRowIOMapping2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_horizontal"
android:orientation="horizontal">
<TextView
android:id="@+id/textViewIOMapping2"
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Pressure"
android:textColor="#6d6e70"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/editTextIOMapping2"
style="@style/Base.TextAppearance.AppCompat.Body1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#8bc53f"
android:textSize="30dp"
android:textStyle="bold"
android:enabled="false"/>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
card_view:cardCornerRadius="0dp"
card_view:cardElevation="0dp"
card_view:contentPadding="15dp"
card_view:cardUseCompatPadding="true"
android:layout_marginBottom="1dp"
android:id="@+id/MainFormThirdRow">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="2"
android:gravity="center_horizontal"
android:orientation="horizontal">
<!--Current Cycle Name-->
<LinearLayout
android:id="@+id/tableRowIOMapping1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_horizontal"
android:orientation="horizontal">
<TextView
android:id="@+id/textViewCycleName"
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Current Cycle Name"
android:textColor="#6d6e70"
android:textSize="16dp"
android:textStyle="bold" />
<LinearLayout
android:id="@+id/editTextCycleName"
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="2"
android:gravity="center_horizontal"
android:orientation="horizontal">
<ImageView
android:id="@+id/TwitterImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_weight="1"
android:src="@drawable/icon">
</ImageView>
<TextView
android:id="@+id/editTextCycleName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ff0000"
android:layout_weight="1"
android:textSize="16dp"
android:textStyle="bold"
android:enabled="false"/>
</LinearLayout>
</LinearLayout>
<!--System Status-->
<LinearLayout
android:id="@+id/tableRowIOMapping2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_horizontal"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/tableRowIOMapping2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="2"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
android:id="@+id/textViewSystemStatus"
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="System Status"
android:textColor="#6d6e70"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/editTextSystemStatus"
style="@style/Base.TextAppearance.AppCompat.Body1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:textColor="#8bc53f"
android:textSize="20dp"
android:textStyle="bold"
android:enabled="false"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
card_view:cardCornerRadius="0dp"
card_view:cardElevation="0dp"
card_view:contentPadding="15dp"
card_view:cardUseCompatPadding="true"
android:layout_marginBottom="1dp"
android:id="@+id/MainFormFirstRow">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="2"
android:gravity="center_vertical"
android:orientation="horizontal">
<!--Cycle Stage-->
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="100"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
android:id="@+id/textViewRefTemperature"
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="10"
android:text="Cycle Stage"
android:textColor="#ec1c24"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/editTextCycleStage"
style="@style/Base.TextAppearance.AppCompat.Body1"
android:layout_weight="20"
android:layout_marginLeft="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#231f20"
android:textSize="30dp"
android:textStyle="bold"/>
<ImageView
android:id="@+id/FacebookImage"
android:layout_weight="70"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:src="@drawable/icon">
</ImageView>
</LinearLayout>
<TableLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical"
android:orientation="vertical">
<!--Door State-->
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
android:id="@+id/textViewChamberTemperature"
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Model Name"
android:textColor="#ec1c24"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/editTextDoorState"
style="@style/Base.TextAppearance.AppCompat.Body1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ff0000"
android:textSize="20dp"
android:textStyle="bold"/>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical"
android:orientation="vertical">
<!--Cycle Error-->
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
android:id="@+id/textViewRefTemperature"
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Model Name"
android:textColor="#6d6e70"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/editTextCycleError"
style="@style/Base.TextAppearance.AppCompat.Body1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ff0000"
android:textSize="30dp"
android:textStyle="bold"/>
</LinearLayout>
</LinearLayout>
</TableLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
card_view:cardCornerRadius="0dp"
card_view:cardElevation="0dp"
card_view:contentPadding="15dp"
card_view:cardUseCompatPadding="true"
android:layout_marginBottom="1dp"
android:id="@+id/MainFormSixtRow">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="3"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Ster. Temp:"
android:textColor="#6d6e70"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/plc_ModelName"
style="@style/Base.TextAppearance.AppCompat.Body1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#231f20"
android:textSize="30dp"
android:textStyle="bold"/>
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Ster. Time:"
android:textColor="#ec1c24"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/plc_ModelName"
style="@style/Base.TextAppearance.AppCompat.Body1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#666666"
android:textSize="30dp"
android:textStyle="bold"/>
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
style="@style/Base.TextAppearance.AppCompat.Headline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Dry Time:"
android:textColor="#ec1c24"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/plc_ModelName"
style="@style/Base.TextAppearance.AppCompat.Body1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#666666"
android:textSize="30dp"
android:textStyle="bold"/>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
</LinearLayout>
</LinearLayout>
感谢您的帮助。
【问题讨论】:
标签: android xml xamarin.android android-linearlayout android-cardview