gpt4 book ai didi

android - 无法理解 Toast.maketext()

转载 作者:行者123 更新时间:2023-11-29 17:56:20 24 4
gpt4 key购买 nike

我有以下代码。

public class MyActivity extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
WebView webview = new WebView(this);
webview.getSettings().setJavaScriptEnabled(true);

//Add a client to the view
webview.setWebViewClient(mClient);
webview.loadUrl("http://www.google.com");
setContentView(webview);
}

private WebViewClient mClient = new WebViewClient()
{
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
Uri request = Uri.parse(url);
if(TextUtils.equals(request.getAuthority(), "www.google.com"))
{ //Allow the load
return false;
}
Toast.makeText(MyActivity.this, "Sorry, buddy", Toast.LENGTH SHORT).show();
return true;
}
};
}

了解 if 条件,但 Toast.makeText() 是做什么的?返回 true 会发生什么?

最佳答案

您可以在一个名为 The Documentation 的小地方找到所有答案。

这是 maketext 的一个:http://developer.android.com/reference/android/widget/Toast.html#makeText%28android.content.Context,%20java.lang.CharSequence,%20int%29

另一个是 shoudOverrideUrl :http://developer.android.com/reference/android/webkit/WebViewClient.html#shouldOverrideUrlLoading%28android.webkit.WebView,%20java.lang.String%29

可以看到makeText是用来创建Toast的,但是还是需要调用方法show()才能显示,所以你的代码是错误的。

至于 shouldOverrideUrlLoading,如果宿主应用程序想要离开当前 WebView 并自行处理 url,则返回 True,否则返回 false。

您的代码所做的是“如果请求的 url 不是 www.google.com”,则不加载它并显示错误提示。

关于android - 无法理解 Toast.maketext(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19087674/

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