用Binding方法写一个WebView微型浏览器,Kotlin
时间: 2023-06-20 17:08:29 浏览: 215
以下是一个简单的用Binding方法写的WebView微型浏览器的Kotlin代码:
1. 在build.gradle文件中添加以下依赖项:
```kotlin
implementation 'androidx.appcompat:appcompat:1.3.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation 'androidx.webkit:webkit:1.4.0'
```
2. 创建一个Activity,并在布局文件中添加一个WebView:
```kotlin
class MainActivity : AppCompatActivity() {
private lateinit var webView: WebView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
webView = findViewById(R.id.webView)
webView.settings.javaScriptEnabled = true //启用JavaScript
}
}
```
3. 在布局文件中添加一个WebView组件:
```xml
<WebView
android:id="@+id/webView"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
```
4. 在Activity中添加一个菜单项,用于输入网址并加载:
```kotlin
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
menuInflater.inflate(R.menu.main_menu, menu)
return true
}
override fun onOptionsItemSelected(item: MenuItem): Boolean {
return when (item.itemId) {
R.id.action_go -> {
val url = findViewById<EditText>(R.id.urlEditText).text.toString()
webView.loadUrl(url)
true
}
else -> super.onOptionsItemSelected(item)
}
}
```
5. 在菜单文件中添加一个EditText和一个MenuItem:
```xml
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/action_go"
android:title="Go"
android:icon="@drawable/ic_baseline_arrow_forward_24"
android:showAsAction="always"/>
<item
android:id="@+id/action_refresh"
android:title="Refresh"
android:icon="@drawable/ic_baseline_refresh_24"
android:showAsAction="always"/>
<item
android:id="@+id/action_back"
android:title="Back"
android:icon="@drawable/ic_baseline_arrow_back_24"
android:showAsAction="always"/>
<item
android:id="@+id/action_forward"
android:title="Forward"
android:icon="@drawable/ic_baseline_arrow_forward_24"
android:showAsAction="always"/>
<item
android:id="@+id/action_home"
android:title="Home"
android:icon="@drawable/ic_baseline_home_24"
android:showAsAction="always"/>
<item
android:id="@+id/action_bookmarks"
android:title="Bookmarks"
android:icon="@drawable/ic_baseline_bookmark_24"
android:showAsAction="always"/>
<item
android:id="@+id/action_settings"
android:title="Settings"
android:icon="@drawable/ic_baseline_settings_24"
android:showAsAction="always"/>
<item
android:id="@+id/action_exit"
android:title="Exit"
android:icon="@drawable/ic_baseline_exit_to_app_24"
android:showAsAction="always"/>
<item
android:id="@+id/urlEditText"
android:title="Url"
android:inputType="textUri"
android:hint="Enter URL"
android:icon="@drawable/ic_baseline_link_24"
android:showAsAction="always"
android:actionViewClass="android.widget.EditText"/>
</menu>
```
现在你可以运行这个应用程序,输入一个URL,然后点击菜单中的Go按钮来加载网页了。
阅读全文