【问题标题】:My Webview show blank in kotlin fragment why?为什么我的 Webview 在 kotlin 片段中显示空白?
【发布时间】:2020-10-27 02:27:34
【问题描述】:

我的 webview 显示空白页

这是我的活动课。

class AboutFragment : BaseGreenHCMFragment() { 
    override val layoutId = R.layout.fragment_about
    override fun setupData() {}
    override fun setupView() { 
        val mWebView: WebView? = view?.findViewById(R.id.webviewdaum) as WebView
        mWebView?.loadUrl("greenhcm.com/") 
        val webSettings = mWebView?.getSettings()
        webSettings?.setJavaScriptEnabled(true) 
        // Force links and redirects to open in the WebView instead of in a browser 
        //mWebView?.setWebViewClient(WebViewClient())
    }
}

this is my xml & fragment

【问题讨论】:

  • 请将您的代码写成文本而不是图像。
  • class AboutFragment : BaseGreenHCMFragment() { override val layoutId = R.layout.fragment_about override fun setupData() {} override fun setupView() { val mWebView: WebView? = view?.findViewById(R.id.webviewdaum) as WebView mWebView?.loadUrl("greenhcm.com/") val webSettings = mWebView?.getSettings() webSettings?.setJavaScriptEnabled(true) // 强制链接和重定向在WebView 而不是在浏览器中 //mWebView?.setWebViewClient(WebViewClient()) } }
  • 这是我的片段,先生
  • 我编辑您的问题并将您的 xml 文件与类代码相同

标签: android kotlin webview


【解决方案1】:

无论如何都要检查这个代码。

class MainActivity : AppCompatActivity() {
   var mywebview: WebView? = null
   override fun onCreate(savedInstanceState: Bundle?) {
       super.onCreate(savedInstanceState)
       setContentView(R.layout.activity_main)
       mywebview = findViewById<WebView>(R.id.webview)
       mywebview!!.webViewClient = object : WebViewClient() {
           override fun shouldOverrideUrlLoading(view: WebView?, url: String?): Boolean {
               view?.loadUrl(url)
               return true
           }
       }
       mywebview!!.loadUrl("https://www.google.co.in/")
   }

}

您的代码中需要 WebViewClient。

【讨论】:

  • 我在 Fragment 先生,你能帮帮我吗?我是 kotlin 的新手
  • val mywebview: WebView = view?.findViewById(R.id.webviewdaum) as WebView mywebview!!.webViewClient = object : WebViewClient() { override fun shouldOverrideUrlLoading(view: WebView?, url: String ?): Boolean { view?.loadUrl(url) return true } } mywebview!!.loadUrl("google.co.id/")
  • 您是否检查了互联网权限?你能写日志吗?
  • 片段生命周期中的 onCreateView 在哪里?
  • 2020-10-27 11:59:27.490 22171-22171/com.greenhcm.android W/ContentCatcher:无法通知 WebView
猜你喜欢
  • 1970-01-01
  • 2017-03-16
  • 1970-01-01
  • 1970-01-01
  • 2017-07-06
  • 2017-01-16
  • 2017-03-06
  • 2015-03-04
  • 1970-01-01
相关资源
最近更新 更多