WebView là một khung nhìn hiển thị các trang web bên trong ứng dụng lập trình Android của bạn. Bạn cũng có thể chỉ định chuỗi HTML và có thể hiển thị chuỗi bên trong ứng dụng của mình bằng WebView. WebView biến ứng dụng của bạn thành ứng dụng web.
Để thêm WebView vào ứng dụng của bạn, bạn phải thêm phần tử <WebView> vào tệp bố cục xml của bạn. Cú pháp của nó như sau
Để sử dụng nó, bạn phải có một tham chiếu về khung nhìn này trong tệp Java. Để có được một tham chiếu, tạo một đối tượng của lớp WebView. Cú pháp của nó là
Để tải url web vào WebView, bạn cần gọi một phương thức loadUrl (Chuỗi url) của lớp WebView, chỉ định url cần thiết. Cú pháp của nó là:
Ngoài việc chỉ tải url, bạn có thể có nhiều quyền kiểm soát hơn đối với WebView của mình bằng cách sử dụng các phương thức được xác định trong lớp WebView. Chúng được liệt kê như sau
Nếu bạn nhấp vào bất kỳ liên kết nào trong trang web của WebView, trang đó sẽ không được tải bên trong WebView của bạn. Để làm được điều đó, bạn cần Học lập trình Android mở rộng lớp của mình khỏi WebViewClient và ghi đè phương thức của nó. Cú pháp của nó là
Dưới đây là một ví dụ minh họa việc sử dụng Bố cục WebView. Nó tạo ra một ứng dụng web cơ bản sẽ yêu cầu bạn chỉ định một url và sẽ tải trang web url này trong WebView.
Để thử nghiệm với ví dụ này, bạn cần chạy nó trên một thiết bị thực tế có internet đang chạy.
Sau đây là nội dung của tệp hoạt động chính được sửa đổi src / MainActivity.java .
Học lập trình Android. Bây giờ chỉ cần chỉ định một url trên trường url và nhấn nút duyệt xuất hiện, để khởi chạy trang web. Nhưng trước đó hãy chắc chắn rằng bạn đã kết nối với internet. Sau khi nhấn nút, màn hình sau sẽ xuất hiện
Chú thích. Chỉ cần thay đổi url trong trường url, WebView của bạn sẽ mở trang web mong muốn của bạn.
Để thêm WebView vào ứng dụng của bạn, bạn phải thêm phần tử <WebView> vào tệp bố cục xml của bạn. Cú pháp của nó như sau
![]() |
| Khóa học lập trình Andorid |
<WebView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/webview" android:layout_width="fill_parent" android:layout_height="fill_parent" />
Để sử dụng nó, bạn phải có một tham chiếu về khung nhìn này trong tệp Java. Để có được một tham chiếu, tạo một đối tượng của lớp WebView. Cú pháp của nó là
WebView browser = (WebView) findViewById(R.id.webview);
Để tải url web vào WebView, bạn cần gọi một phương thức loadUrl (Chuỗi url) của lớp WebView, chỉ định url cần thiết. Cú pháp của nó là:
browser.loadUrl("http://www.tutorialspoint.com");
Ngoài việc chỉ tải url, bạn có thể có nhiều quyền kiểm soát hơn đối với WebView của mình bằng cách sử dụng các phương thức được xác định trong lớp WebView. Chúng được liệt kê như sau
| Không. | Phương pháp & Mô tả |
|---|---|
| 1 | canGoBack () Phương pháp này chỉ định WebView có mục lịch sử quay lại. |
| 2 | canGoForward () Phương pháp này chỉ định WebView có mục lịch sử chuyển tiếp. |
| 3 | xóa lịch sử() Phương pháp này sẽ xóa lịch sử tiến và lùi của WebView. |
| 4 | hủy hoại() Phương pháp này phá hủy trạng thái bên trong của WebView. |
| 5 | find ALLAsync (Tìm chuỗi) Phương pháp này tìm tất cả các trường hợp của chuỗi và làm nổi bật chúng. |
| 6 | getProTHER () Phương pháp này nhận được tiến trình của trang hiện tại. |
| 7 | getTitle () Phương pháp này trả về tiêu đề của trang hiện tại. |
| số 8 | getUrl () Phương pháp này trả về url của trang hiện tại. |
private class MyBrowser extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } }Thí dụ
Dưới đây là một ví dụ minh họa việc sử dụng Bố cục WebView. Nó tạo ra một ứng dụng web cơ bản sẽ yêu cầu bạn chỉ định một url và sẽ tải trang web url này trong WebView.
Để thử nghiệm với ví dụ này, bạn cần chạy nó trên một thiết bị thực tế có internet đang chạy.
| Các bước | Sự miêu tả |
|---|---|
| 1 | Bạn sẽ sử dụng studio Android để tạo một ứng dụng Android theo gói com.example.sairamkrishna.myapplication. |
| 2 | Sửa đổi tệp src / MainActivity.java để thêm mã WebView. |
| 3 | Sửa đổi res / layout / Activity_main để thêm các thành phần XML tương ứng |
| 4 | Sửa đổi AndroidManifest.xml để thêm các quyền cần thiết |
| 5 | Chạy ứng dụng và chọn một thiết bị Android đang chạy và cài đặt ứng dụng trên đó và xác minh kết quả. |
package com.example.sairamkrishna.myapplication; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.Button; import android.widget.EditText; public class MainActivity extends Activity { Button b1; EditText ed1; private WebView wv1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); b1=(Button)findViewById(R.id.button); ed1=(EditText)findViewById(R.id.editText); wv1=(WebView)findViewById(R.id.webView); wv1.setWebViewClient(new MyBrowser()); b1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String url = ed1.getText().toString(); wv1.getSettings().setLoadsImagesAutomatically(true); wv1.getSettings().setJavaScriptEnabled(true); wv1.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); wv1.loadUrl(url); } }); } private class MyBrowser extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } } }Sau đây là nội dung được sửa đổi của xml res / layout / Activity_main.xml.
Trong đoạn mã sau abc chỉ ra logo của guidespoint.com
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout 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" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"> <TextView android:text="WebView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textview" android:textSize="35dp" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Tutorials point" android:id="@+id/textView" android:layout_below="@+id/textview" android:layout_centerHorizontal="true" android:textColor="#ff7aff24" android:textSize="35dp" /> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/editText" android:hint="Enter Text" android:focusable="true" android:textColorHighlight="#ff7eff15" android:textColorHint="#ffff25e6" android:layout_marginTop="46dp" android:layout_below="@+id/imageView" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_alignRight="@+id/imageView" android:layout_alignEnd="@+id/imageView" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/imageView" android:src="@drawable/abc" android:layout_below="@+id/textView" android:layout_centerHorizontal="true" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Enter" android:id="@+id/button" android:layout_alignTop="@+id/editText" android:layout_toRightOf="@+id/imageView" android:layout_toEndOf="@+id/imageView" /> <WebView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/webView" android:layout_below="@+id/button" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_alignParentRight="true" android:layout_alignParentEnd="true" android:layout_alignParentBottom="true" /> </RelativeLayout>Sau đây là nội dung của res / value / string.xml .
<resources> <string name="app_name">My Application</string> </resources>Sau đây là nội dung của tệp AndroidManifest.xml .
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.sairamkrishna.myapplication" > <uses-permission android:name="android.permission.INTERNET" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>Hãy thử chạy ứng dụng WebView của bạn. Để chạy ứng dụng từ studio Android, hãy mở một trong các tệp hoạt động của dự án của bạn và nhấp vào biểu tượng Chạy từ thanh công cụ. Studio Android sẽ hiển thị như hình bên dưới
Học lập trình Android. Bây giờ chỉ cần chỉ định một url trên trường url và nhấn nút duyệt xuất hiện, để khởi chạy trang web. Nhưng trước đó hãy chắc chắn rằng bạn đã kết nối với internet. Sau khi nhấn nút, màn hình sau sẽ xuất hiện
Chú thích. Chỉ cần thay đổi url trong trường url, WebView của bạn sẽ mở trang web mong muốn của bạn.

Không có nhận xét nào:
Đăng nhận xét