8

我有我的布局 xml 文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
     android:id="@+id/titlename"  
android:layout_width="wrap_content"
android:layout_height="wrap_content" 
android:text="@string/HostName"
 android:layout_weight="0"

/>
<TextView
     android:id="@+id/name"  
android:layout_width="wrap_content"
android:layout_height="wrap_content" 
 android:layout_weight="0"
/>
</LinearLayout>

当我执行上述操作时,我的输出如下:

在此处输入图像描述

但我的要求是让我的输出如下:

|   text1:    text2    |

有人可以帮忙吗?

4

9 回答 9

27

使用以下代码

在此处输入图像描述

更新

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:orientation="horizontal"
   android:weightSum="1" >
<TextView
    android:id="@+id/titlename"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_weight="0.5"
    android:gravity="center"
    android:text="hi" />
<TextView
    android:id="@+id/name"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_weight="0.5"
    android:gravity="center"
    android:text="2hi2" />
 </LinearLayout>
于 2013-04-23T18:09:57.847 回答
3

将 android:layout_width 设为 0dp。然后为每个文本视图设置 0.5 个权重。每个文本视图将填充父布局的一半宽度。就像是:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<TextView
     android:id="@+id/titlename"  
android:layout_width="0dp"
android:layout_height="wrap_content" 
android:text="@string/HostName"
 android:layout_weight="0.5"

/>
<TextView
     android:id="@+id/name"  
android:layout_width="0dp"
android:layout_height="wrap_content" 
 android:layout_weight="0.5"
/>
</LinearLayout>
于 2013-04-23T18:21:49.897 回答
0

我会取出weight属性。这是我能看到的唯一一件事,那就是搞砸了。另请注意,fill_parent已弃用,您应该match_parent改用

或者,如果您weight出于某种原因需要它们,那么如果您希望它们各自占据屏幕的一半,请将它们更改为 1。

另外,如果使用weight那么你应该设置android:layout_width="0dp"

于 2013-04-23T18:10:51.153 回答
0

为您的 LinearLayout设置android:orientation="horizontal"

于 2013-04-23T18:11:39.977 回答
0

如下所示更新您的布局,除非您在父 LinearLayout 上设置 weightSum,否则您不希望包含 weight=0 属性。加上 weights 和 weightSum 并不真正适合您的要求。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <TextView
         android:id="@+id/titlename"  
         android:layout_width="wrap_content"
         android:layout_height="wrap_content" 
         android:text="@string/HostName"

        />
    <TextView
         android:id="@+id/name"  
         android:layout_width="wrap_content"
         android:layout_height="wrap_content" 
        />
</LinearLayout>
于 2013-04-23T18:13:07.680 回答
0

你可以尝试使用RelativeLayout

有了它,您可以alignParentTop="true"在 titlename 元素处设置alignTo="@id/titlename"toRightOf="@id/titlename"在 name 元素处设置名称

于 2013-04-23T18:14:31.143 回答
0

实际上,您的原始代码在我的 ADT 中完美运行。您是否更改了更新第二个文本视图的 Java 代码中的文本大小或行填充?

于 2013-04-23T18:26:34.957 回答
0
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TextView
     android:id="@+id/titlename"  
     android:layout_width="wrap_content"
     android:layout_height="wrap_content" 
     android:text="@string/HostName"
/>
<TextView
     android:id="@+id/name"  
     android:layout_width="wrap_content"
     android:layout_height="wrap_content" 
/>
</LinearLayout>
于 2017-05-29T14:46:41.783 回答
0

创建一个LinearLayout封闭的 2 TextViews

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    tools:context=".MainActivity">

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/btnLogin"
        android:layout_below="@id/etPassword"
        android:layout_marginTop="20dp"
        android:layout_marginLeft="50dp"
        android:layout_marginRight="50dp"
        android:text="Login"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/btnLogin"
        android:layout_marginTop="10dp"
        android:gravity="center">

        <TextView
            android:id="@+id/tvIAlwaysHaveAccount"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/btnLogin"
            android:text="I always have an account?" />

        <TextView
            android:id="@+id/tvForgotPassword"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/tvIAlwaysHaveAccount"
            android:layout_marginLeft="15dp"
            android:text="Forgot password?" />

    </LinearLayout>


</RelativeLayout>

和你的节目一样:”

在此处输入图像描述

于 2020-12-15T01:49:52.810 回答