我正在尝试在webview上创建一个按钮和一个edittext,两者都应该位于页面的后面。在我下面发布的尝试中,我设法在webview上设置了按钮和edittext区域,但问题是,按钮和edittext区域都被网页内容遮蔽或覆盖。有没有办法避免将内容与这些元素混合。
JavaCode:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_web_page00);
webView00 = (WebView) findViewById(R.id.webView00);
btnGo = (Button) findViewById(R.id.go_btn);
etUrl = (EditText) findViewById(R.id.url_edittext);
webView00.getSettings().setJavaScriptEnabled(true);
webView00.setWebViewClient(new myWebViewClient());
webView00.setWebChromeClient(new myWebChromeClient());
webView00.loadUrl("http://google.com");
XML:
<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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.webapptest01.WebAppTest01$PlaceholderFragment" >
<WebView
android:id="@+id/webView00"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
<Button
android:id="@+id/go_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:text="Go!" />
<EditText
android:id="@+id/url_edittext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:minWidth="220dp" />
</RelativeLayout>
答案 0 :(得分:0)
以下是一种将其保持为单个RelativeLayout
(无嵌套布局)并使用android:layout_above
属性的方法:
<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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.webapptest01.WebAppTest01$PlaceholderFragment" >
<Button
android:id="@+id/go_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:text="Go!" />
<EditText
android:id="@+id/url_edittext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:minWidth="220dp" />
<WebView
android:id="@+id/webView00"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/url_edittext" />
</RelativeLayout>
答案 1 :(得分:0)
您必须使用框架布局而不是相对布局。
以下是您可以添加此
的xml代码<FrameLayout 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" >
<WebView
android:id="@+id/webView00"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/url_edittext" />
<Button
android:id="@+id/go_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|bottom"
android:text="Go!" />
<EditText
android:id="@+id/url_edittext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:minWidth="220dp" />
</FrameLayout>