gpt4 book ai didi

android - 保持当前页面呈现直到加载下一页

转载 作者:行者123 更新时间:2023-11-29 01:40:34 27 4
gpt4 key购买 nike

我有一个基于 WebView.loadUrl("http://www.example.com ") 的简单应用。

当用户点击一个 URL 时,默认行为是立即显示一个空白页面,等待页面加载,然后显示该页面。

我成功地显示了启动画面来代替空白页面。但是,是否可以保留当前页面呈现,而仅在下一页完全加载时才呈现下一页?

最佳答案

我觉得这是一个 hacky 解决方案。我将其作为临时修复提供,直到有人发布了执行此操作的“真实”方法。

MainActivity 类:

public class MainActivity extends Activity
{
WebView webView1, webView2;
EditText editText;

@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

editText = (EditText) findViewById(R.id.edit_url);
webView1 = (WebView) findViewById(R.id.webView_1);
webView2 = (WebView) findViewById(R.id.webView_2);

webView1.setWebViewClient(client);
webView2.setWebViewClient(client);

webView1.loadUrl(editText.getText().toString());
}

private WebViewClient client = new WebViewClient()
{
public void onPageFinished(WebView webView, String url)
{
if (webView == webView1)
webView2.setVisibility(View.GONE);
else
webView1.setVisibility(View.GONE);

webView.setVisibility(View.VISIBLE);
Toast.makeText(MainActivity.this, "WebView " + (webView == webView1 ? "One" : "Two") + " is showing", 0).show();
}
};

private void loadUrl(String url)
{
if (webView1.getVisibility() == View.GONE)
webView1.loadUrl(url);
else
webView2.loadUrl(url);
}

public void onClick(View v)
{
loadUrl(editText.getText().toString());
}
}

main.xml:

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

<android.webkit.WebView android:id="@+id/webView_1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />

<android.webkit.WebView android:id="@+id/webView_2"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:visibility="gone" />

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >

<EditText android:id="@+id/edit_url"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="4"
android:layout_gravity="center_vertical"
android:text="http://www.example.com" />

<Button android:id="@+id/button_load"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onClick"
android:text="Load" />

</LinearLayout>

</LinearLayout>

关于android - 保持当前页面呈现直到加载下一页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24945962/

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