Android WebView en Kotlin

WebView es una vista que se utiliza para mostrar páginas web dentro de la aplicación. Se utiliza para convertir la aplicación en una aplicación web. En este artículo, mostremos https://www.geeksforgeeks.org/ dentro de la aplicación de Android usando Kotlin.

Nota: Para implementar Android WebView en Java, consulte Cómo usar WebView en Android usando Java .

Jerarquía de clases

kotlin.Any
     android.view.View
          android.view.ViewGroup
               android.widget.AbsoluteLayout
                    android.webkit.WebView

Acercarse
 

Paso 1: Crear un nuevo proyecto

Para crear un nuevo proyecto en Android Studio, consulte cómo crear/iniciar un nuevo proyecto en Android Studio.

Paso 2: Modificar activity_main.xml

Esto se usa para configurar el front-end de la aplicación, colocamos el WebView en el front-end.

XML

<androidx.constraintlayout.widget.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
 
    <!-- Place Web-view on the Screen -->
    <WebView
        android:id="@+id/webView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"></WebView>
 
</androidx.constraintlayout.widget.ConstraintLayout>

Paso 3: Modificar MainActivity.kt

Este es el back-end de la Aplicación, aquí asignamos valores a las vistas y acciones a las vistas.

Kotlin

package com.example.webview_kotlin
 
import android.os.Bundle
import android.webkit.WebViewClient
import androidx.appcompat.app.AppCompatActivity
import kotlinx.android.synthetic.main.activity_main.*
 
class MainActivity : AppCompatActivity() {
 
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
 
        // WebViewClient allows you to handle
        // onPageFinished and override Url loading.
        webView.webViewClient = WebViewClient()
 
        // this will load the url of the website
        webView.loadUrl("https://www.geeksforgeeks.org/")
 
        // this will enable the javascript settings
        webView.settings.javaScriptEnabled = true
 
        // if you want to enable zoom feature
        webView.settings.setSupportZoom(true)
    }
 
    // if you press Back button this code will work
    override fun onBackPressed() {
        // if your webview can go back it will go back
        if (webView.canGoBack())
            webView.goBack()
        // if your webview cannot go back
        // it will exit the application
        else
            super.onBackPressed()
    }
}

Paso 4: Modificar AndroidManifest.xml

En AndroidManifest.xml , se debe incluir el siguiente permiso para acceder a Internet.

XML

<?xml version="1.0" encoding="utf-8"?>
 
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.webview_kotlin">
 
    <!-- Give permission for app to access the Internet -->
    <uses-permission android:name="android.permission.INTERNET"/>
 
   <application
       android:allowBackup="true"
       android:icon="@mipmap/ic_launcher"
       android:label="@string/app_name"
       android:roundIcon="@mipmap/ic_launcher_round"
       android:supportsRtl="true"
       android:theme="@style/AppTheme">
       <activity android:name=".MainActivity">
           <intent-filter>
               <action android:name="android.intent.action.MAIN" />
               <category android:name="android.intent.category.LAUNCHER" />
           </intent-filter>
       </activity>
   </application>
</manifest>

 
Salida: ejecutar en el emulador
 

Cuando ejecutamos la aplicación en el emulador o en el teléfono inteligente Android, podemos ver esto como nuestra salida. Recuerda encender Internet en tu dispositivo. 

output screen

Publicación traducida automáticamente

Artículo escrito por raviteja2110 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *