我想使用DialogFragment
在WebView
中加载一些内容。以下是我的xml布局:
<?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"
android:orientation="vertical">
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/webview"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:layout_marginTop="20dp"
android:orientation="horizontal"
android:weightSum="2">
<Button
android:id="@+id/decline"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_marginEnd="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1"
android:background="@android:color/transparent"
android:letterSpacing="0.1"
android:text="DECLINE"
android:textAllCaps="true"
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
android:textColor="@color/app_theme"
android:textStyle="bold" />
<Button
android:id="@+id/accept"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:background="@drawable/proceed_button"
android:enabled="false"
android:letterSpacing="0.1"
android:text="ACCEPT"
android:textAllCaps="true"
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
android:textColor="#fff"
android:textStyle="bold" />
</LinearLayout>
</RelativeLayout>
问题在于,webview的高度设置为wrap_content,按钮位于相对布局容器中的webview下方,按钮仅在内容实际加载之前可见。之后,他们完全被隐藏了。
如何在对话框中同时显示按钮和webview,而不会阻碍另一个?
答案 0 :(得分:1)
在这里,试试这个布局。
将LinearLayout
(包含按钮)对齐到底部,并在该布局上方设置WebView
。
<?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"
android:orientation="vertical">
<WebView
android:id="@+id/webview"
android:layout_above="@+id/myLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<LinearLayout
android:id="@+id/myLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/webview"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:layout_alignParentBottom="true"
android:layout_marginTop="20dp"
android:orientation="horizontal"
android:weightSum="2">
<Button
android:id="@+id/decline"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_marginEnd="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1"
android:background="@android:color/transparent"
android:letterSpacing="0.1"
android:text="DECLINE"
android:textAllCaps="true"
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
android:textColor="@color/app_theme"
android:textStyle="bold" />
<Button
android:id="@+id/accept"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:background="@drawable/proceed_button"
android:enabled="false"
android:letterSpacing="0.1"
android:text="ACCEPT"
android:textAllCaps="true"
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
android:textColor="#fff"
android:textStyle="bold" />
</LinearLayout>
</RelativeLayout>