2

我对 android 很陌生,我必须实现一个看起来像这样的视图:

-------------Some Text----------------------

我知道我可以View使用以下代码在我的 xml 中画一条线:

<View
android:layout_width="100dp"
 android:layout_height="1dp"
 android:background="#00ff00" />

这将最终绘制:

-----------------------

但在此之后,我希望放置文本并再次绘制线的另一端。

我试过了,但我得到了这样的东西:

----------------------
text

当我在代码TextView后添加一些。View

这有可能做我的目标吗?

提前致谢。

4

4 回答 4

3

可能这会帮助你得到你想要的。赋予观看权重是关键。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal" >

<View
    android:layout_width="fill_parent"
    android:layout_height="1dp"
    android:layout_weight="1"
    android:background="#00ff00" />

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hello_world" />

<View
    android:layout_width="fill_parent"
    android:layout_height="1dp"
    android:layout_gravity="center"
    android:layout_weight="1"
    android:background="#00ff00" />
</LinearLayout>
于 2013-02-28T10:51:06.370 回答
2

尝试FrameLayout在这种情况下使用或RelativeLayout防止深层视图层次结构并提高性能

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#fff" >

<View
    android:layout_width="200dp"
    android:layout_height="1dp"
    android:layout_gravity="center"
    android:background="#555" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:background="#fff"
    android:text="Hello world" />

</FrameLayout>
于 2013-02-28T11:03:41.397 回答
1

试试这个..

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <View
        android:id="@+id/view1"
        android:layout_width="60dp"
        android:layout_height="4dp"
        android:layout_marginTop="5dp"
        android:background="#00ff00" />

    <TextView
        android:id="@+id/tv1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="2dp"
        android:layout_marginRight="2dp"
        android:layout_toRightOf="@+id/view1"
        android:text="My Text" />

    <View
        android:id="@+id/view2"
        android:layout_width="60dp"
        android:layout_height="4dp"
        android:layout_marginTop="5dp"
        android:layout_toRightOf="@+id/tv1"
        android:background="#00ff00" />

</RelativeLayout>

希望对你有帮助..

让我知道它是否有效。

于 2013-02-28T11:00:23.423 回答
0

好吧,最简单的可能就是有一个RelativeLayout或水平LinearLayout,你的线宽的一半并将它创建为;

视图 (50dp) - 文本视图 - 视图 (50dp)

于 2013-02-28T10:38:28.643 回答