0

几个小时后,我无法修复活动底部的按钮。要么是不可见的,要么是在顶部。我也试过没有相对布局,我尝试添加另一个线性布局,但我仍然不知道如何设置这个按钮。

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

    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:src="@drawable/news" />

    <WebView
        android:id="@+id/webView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />


    <Button
        android:id="@+id/newsbutton"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:text="Chiudi" />

</LinearLayout>
</RelativeLayout>
4

4 回答 4

1
<RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >

    <ImageView
            android:id="@+id/imageView1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:src="@drawable/news" />

    <WebView
            android:id="@+id/webView1"
            android:layout_below="@id/imageView1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />


    <Button
            android:id="@+id/newsbutton"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom"
            android:layout_alignParentBottom="true"
            android:text="Chiudi" />
</RelativeLayout>
于 2013-01-07T22:10:17.323 回答
0

首先,您在旧版 Android 布局编辑器中有一个警告,即 RelativeLayout 或 LinearLayout 无用。这应该给你一个提示。注意警告,它们在大多数情况下都很有用。

事实上,你可以摆脱 LinearLayout

所以,解决方案是:

  1. 删除线性布局。
  2. 添加android:layout_below="@+id/imageView1"到 Web 视图。
  3. 添加android:layout_alignParentBottom="true"到按钮。
  4. 添加android:contentDescription到图像视图。
  5. 使用 @string 而不是硬编码的字符串。

可选步骤未加粗,它们将删除警告。

整个工作代码,在 Android 4.1.2 下测试:

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

<ImageView
        android:id="@+id/imageView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:contentDescription="TODO: DESCRIPTION"
        android:src="@drawable/ic_launcher" />

<WebView
    android:id="@+id/webView1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/imageView1" />


<Button
        android:id="@+id/newsbutton"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:layout_alignParentBottom="true"
        android:text="Chiudi" />

</RelativeLayout>
于 2013-01-07T22:19:24.283 回答
0

将以下内容复制粘贴到您的按钮组件中;)

    android:layout_marginBottom="147dp"
    android:layout_marginTop="50dp"
    android:layout_marginleft="50dp"
    android:layout_marginRight="47dp"

只玩数字,我肯定会掌握它的:)

于 2013-01-08T00:26:23.930 回答
-1

只需在按钮中添加 android:layout_below="@id/webView1" 即可。

如果您要使用 LinearLayout,您可以像这样设置应该填充空白空间的 Widget:layout_height="0dp" 和 layout_weight="1"。这也应该完成这项工作。

于 2013-01-07T22:09:58.210 回答