我在屏幕上连续显示3个值,我需要在它们之间添加2-3条垂直分隔线。问题是每当我在它们之间添加一个视图/分隔线时它们会向左或向右移动太多并且一些值被切断/消失。我想知道是否有办法去abotu它,下面是我的xml代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:foo="http://schemas.android.com/apk/res/com.justin.abc"
android:layout_width="20dp"
android:layout_height="match_parent"
android:orientation="horizontal"
android:paddingBottom="8dp"
android:paddingLeft="20dp"
android:paddingTop="8dp" >
<LinearLayout
android:id="@+id/layout1"
android:layout_width="2dp"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<com.justin.abc.utils.FontView
android:id="@+id/symbol"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingRight="3dp"
android:textColor="@color/white"
android:textSize="12sp"
foo:customFont="Roboto-Bold.ttf" />
<com.justin.abc.utils.FontView
android:id="@+id/arrow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
foo:customFont="Roboto-Bold.ttf" />
</LinearLayout>
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/value1_back"
style="@style/abc.TextView.ListsTextView.Header"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="3dp"/>
<com.justin.abc.utils.FontView
android:id="@+id/change"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
foo:customFont="Roboto-Bold.ttf" />
</FrameLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/layout2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<com.justin.abc.utils.FontView
android:id="@+id/symbol2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingRight="3dp"
android:textColor="@color/white"
android:textSize="12sp"
foo:customFont="Roboto-Bold.ttf" />
<com.justin.abc.utils.FontView
android:id="@+id/dashboard_markets_arrow2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
foo:customFont="Roboto-Bold.ttf" />
</LinearLayout>
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/value2_back"
style="@style/abc.TextView.ListsTextView.Header"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="3dp"/>
<com.justin.abc.utils.FontView
android:id="@+id/change2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
foo:customFont="Roboto-Bold.ttf" />
</FrameLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/layout3"
android:layout_width="0dp"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<com.justin.abc.utils.FontView
android:id="@+id/dashboard_markets_symbol3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingRight="3dp"
android:textColor="@color/white"
android:textSize="12sp"
foo:customFont="Roboto-Bold.ttf" />
<com.justin.abc.utils.FontView
android:id="@+id/dashboard_markets_arrow3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
foo:customFont="Roboto-Bold.ttf" />
</LinearLayout>
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/value3_back"
style="@style/abc.TextView.ListsTextView.Header"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="3dp"/>
<com.justin.abc.utils.FontView
android:id="@+id/change3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
foo:customFont="Roboto-Bold.ttf" />
</FrameLayout>
</LinearLayout>
</LinearLayout>
我是否需要在后台添加图层或其他内容以支持相同或者我是否需要更改此结构? 谢谢! 贾斯汀
即使添加了android:gravity =“center”,我仍然会看到相同的结果
答案 0 :(得分:1)
将其放在您在问题中提到的每个值之间。
<View android:layout_height="fill_parent"
android:layout_width="2px"
android:background="#000000"/>
应该在值之间给你一个黑条。
答案 1 :(得分:1)
正如@Gru所说,您可以使用layout1
和layout2
以及 layout2
和layout3
之间的视图获取黑线。< / p>
正如您所指出的,这将位于layout2
和layout3
内容的左侧边缘。为了解决这个问题,一个简单的解决方案是添加以下行:
android:paddingLeft="20dp"
到layout1
,layout2
和layout3
,同时从顶部LinearLayout
删除它。这将无法实现精确的居中,但它会为每个块提供相等的左边缘文本,我认为这看起来是正确的。