gpt4 book ai didi

android - 如何在 1 个 Activity 中显示 2 个 View (android)?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:43:16 27 4
gpt4 key购买 nike

假设我打开了一个 webview:

  public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
main_webv = (WebView) findViewById(R.id.mainwebview);
main_webv.setWebViewClient(new HelloWebViewClient());
main_webv.getSettings().setJavaScriptEnabled(true);
main_webv.getSettings().setSupportZoom(false);
main_webv.addJavascriptInterface(new HelloJavascriptInterface(),"hello");
main_webv.setWebChromeClient(new HelloWebChromeClient());
main_webv.loadUrl(SPLASH);
main_webv.setVisibility( 4 );

setContentView(R.layout.main_list);
main_listv = (ListView) findViewById(R.id.mainlistview);


}

我只是想在此 webview 之上创建一个 ListView(将其覆盖...但仍允许 webview 运行)。我可以打开和关闭 View 。谢谢。

最佳答案

您可以使用 FrameLayout ;这样两个 View 都将排列在另一个 View 之上。然后,您可以使用 View.setVisibility(..) 方法切换它们的可见性。

[编辑:添加代码]

这是我的布局 XML(weblister.xml):

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ListView
android:id="@+id/list_view"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
<WebView
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>

</FrameLayout>

现在,我创建了一个 Activity,它将在其 View 层次结构中同时包含 ListView 和 WebView,但其中只有一个是可见的:

public class WebAct extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.weblister);

//setup listview
ListView listView = (ListView) findViewById(R.id.list_view);
listView.setAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1,
new String[]{"One","Two"}){

});
// setup web view
WebView webView = (WebView) findViewById(R.id.webview);

webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setSupportZoom(false);

webView.loadUrl("http://www.google.com");

// set visibility
listView.setVisibility(View.INVISIBLE);
webView.setVisibility(View.VISIBLE);
}

}

注意:代码可能不完整,但我希望它能向您传达我的观点。

关于android - 如何在 1 个 Activity 中显示 2 个 View (android)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2235657/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com