0

我正在使用主屏幕小部件。我希望最右侧的按钮(第二个按钮)保持固定在父线性布局的右侧。

这是代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/LinearLayout01"
android:layout_width="200dp"
android:layout_height="75dp"
android:background="@drawable/shape"
android:orientation="horizontal" >

<Button
    android:id="@+id/update"
    android:layout_width="30dp"
    android:layout_height="fill_parent"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:text="Update"
    android:textSize="3pt" />

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/LinearLayout01"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:background="@drawable/shape"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/ssid"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:text="SSID"
        android:textColor="#333333"
        android:textSize="5pt"
        android:layout_weight="1" />

    <TextView
        android:id="@+id/wifiip"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:text="IP address"
        android:textColor="#333333"
        android:textSize="5pt"
        android:layout_weight="1" />

    <TextView
        android:id="@+id/extip"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/ssid"
        android:text="WAN IP"
        android:textColor="#333333"
        android:textSize="5pt"
        android:layout_weight="1" />
</LinearLayout>

<Button
    android:id="@+id/config"
    android:layout_width="30dp"
    android:layout_height="fill_parent"
    android:layout_alignParentRight="true"
    android:text="Config"
    android:textSize="3pt" />

中间的垂直线性布局根据文本视图的宽度向右或向左推或拉按钮。我哪里错了?

这是小部件提供程序的 xml

<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider
xmlns:android="http://schemas.android.com/apk/res/android" 
android:minWidth="200dp"
android:minHeight="75dp"
android:initialLayout="@layout/widget"
android:updatePeriodMillis="180000"

 />
4

1 回答 1

3

将此添加到您的 LinearLayout:

android:layout_width="0dip"
android:layout_weight="1"

那应该这样做。让我知道这是否有效。

编辑:

试试这个代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/LinearLayout01"
android:layout_width="200dp"
android:layout_height="75dp"
android:background="@drawable/shape"
android:orientation="horizontal" >

<Button
    android:id="@+id/update"
    android:layout_width="30dp"
    android:layout_height="fill_parent"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:text="Update"
    android:textSize="3pt" />

<LinearLayout
    android:id="@+id/LinearLayout01"
    android:layout_width="0dip"
    android:layout_weight="1"
    android:layout_height="fill_parent"
    android:background="@drawable/shape"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/ssid"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:text="SSID"
        android:textColor="#333333"
        android:textSize="5pt"
        android:layout_weight="1" />

    <TextView
        android:id="@+id/wifiip"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:text="IP address"
        android:textColor="#333333"
        android:textSize="5pt"
        android:layout_weight="1" />

    <TextView
        android:id="@+id/extip"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/ssid"
        android:text="WAN IP"
        android:textColor="#333333"
        android:textSize="5pt"
        android:layout_weight="1" />
</LinearLayout>

<Button
    android:id="@+id/config"
    android:layout_width="30dp"
    android:layout_height="fill_parent"
    android:layout_alignParentRight="true"
    android:text="Config"
    android:textSize="3pt" />
</LinearLayout>
于 2012-07-20T21:46:32.407 回答