问题描述
您好,我想将这些块从 AppInventor 项目转换为使用 Kotiln 作为我的编程语言的 Android Studio 项目,但我对 Android 开发非常陌生,有人可以帮我吗?
这个应用程序的作用是打开 webview 并在随机生成的时间重新加载我的网页 URL。
到目前为止我尝试了什么!
package com.technosoftkpk.y_view
import android.os.Bundle
import android.webkit.WebView
import android.webkit.WebViewClient
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val myWebView: WebView = findViewById(R.id.webview)
myWebView.setWebViewClient(WebViewClient())
myWebView.loadUrl("https://technosoft.pk")
val webSettings = myWebView.settings
webSettings.displayZoomControls = true
webSettings.javaScriptEnabled = true
}
}
解决方法
这样的事情行得通吗?这将随机等待 0 到 5 秒。 (在onCreate
末尾添加代码):
import kotlin.concurrent.thread
import kotlin.random.Random
thread {
while (true) {
Thread.sleep(Random.nextLong(5000))
runOnUiThread { myWebView.reload() }
}
}
这可能看起来很复杂,但我们需要创建一个新线程以避免阻塞 UI 线程并允许用户输入。但是然后重新加载需要再次在 UI 线程上发生。另一种方法是使用 postDelayed
。