Trong chương này, chúng ta sẽ thấy cách bạn có thể cung cấp điều hướng tiến và lùi giữa một ứng dụng. Trước tiên, chúng tôi sẽ xem xét cách cung cấp điều hướng trong ứng dụng.
Để thực hiện Điều hướng, bước đầu tiên là khai báo hoạt động nào là cha mẹ thích hợp cho từng hoạt động. Bạn có thể làm điều đó bằng cách chỉ định thuộc tính parentActivityName trong một hoạt động. Cú pháp của nó được đưa ra dưới đây
Sau đó bạn cần phải gọi setDisplayHomeAsUpEnabled phương pháp getActionBar () trong phương thức onCreate của hoạt động này. Điều này sẽ cho phép nút quay lại trong thanh tác vụ trên cùng.
Nó có thể được thực hiện bằng cách ghi đè lên BackPressed và sau đó gọi phương thức moveTaskToBack và kết thúc . Cú pháp của nó được đưa ra dưới đây
Thí dụ
Ví dụ dưới đây minh họa việc sử dụng Điều hướng. Nó đóng một ứng dụng cơ bản cho phép bạn điều hướng trong ứng dụng của mình.
Để thử nghiệm với ví dụ này, bạn cần chạy ứng dụng này trên thiết bị thực hoặc trong trình giả lập.
Đây là nội dung của src / MainActivity.java .
Để chạy ứng dụng từ Android studio, 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ụ.
Android studio cài đặt ứng dụng trên AVD của bạn và khởi động ứng dụng và nếu mọi thứ đều ổn với thiết lập và ứng dụng của bạn, ứng dụng sẽ hiển thị sau cửa sổ Trình mô phỏng
Bây giờ chỉ cần nhấn vào nút và màn hình sau đây sẽ được hiển thị cho bạn.
Cung cấp điều hướng
Điều hướng lên sẽ cho phép ứng dụng của chúng tôi chuyển sang hoạt động trước đó từ hoạt động tiếp theo. Nó có thể được thực hiện như thế này.Để thực hiện Điều hướng, bước đầu tiên là khai báo hoạt động nào là cha mẹ thích hợp cho từng hoạt động. Bạn có thể làm điều đó bằng cách chỉ định thuộc tính parentActivityName trong một hoạt động. Cú pháp của nó được đưa ra dưới đây
android:parentActivityName = "com.example.test.MainActivity"
getActionBar().setDisplayHomeAsUpEnabled(true);Điều cuối cùng bạn cần làm là ghi đè lên phương thức onOptionsItemSelected . khi người dùng nhấn nó, hoạt động của bạn sẽ nhận được cuộc gọi tới onOptionsItemSelected (). ID cho hành động là cú pháp Android.R.id.home .Its được đưa ra dưới đây
public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: NavUtils.navigateUpFromSameTask(this); return true; } }
Xử lý nút quay lại thiết bị
Vì bạn đã bật nút quay lại để điều hướng trong ứng dụng của mình, bạn có thể muốn đặt chức năng đóng ứng dụng vào nút quay lại thiết bị.Nó có thể được thực hiện bằng cách ghi đè lên BackPressed và sau đó gọi phương thức moveTaskToBack và kết thúc . Cú pháp của nó được đưa ra dưới đây
Link đăng ký : Học lập trình Android cơ bản.
@Override public void onBackPressed() { moveTaskToBack(true); MainActivity2.this.finish(); }Ngoài phương thức setDisplayHomeAsUpEnabled này, còn có các phương thức khác có sẵn trong lớp ActionBar API. Chúng được liệt kê dưới đây
| Sr.No | Phương pháp & mô tả |
|---|---|
| 1 | addTab (tab ActionBar.Tab, boolean setSelected) Phương pháp này thêm một tab để sử dụng trong chế độ điều hướng theo thẻ |
| 2 | getSelectedTab () Phương thức này trả về tab hiện đang được chọn nếu ở chế độ điều hướng theo thẻ và có ít nhất một tab hiện tại |
| 3 | ẩn giấu() Phương thức này ẩn ActionBar nếu nó hiện đang hiển thị |
| 4 | removeAllTabs () Phương pháp này xóa tất cả các tab khỏi thanh tác vụ và bỏ chọn tab hiện tại |
| 5 | selectTab (tab ActionBar.Tab) Phương pháp này chọn tab được chỉ định |
Ví dụ dưới đây minh họa việc sử dụng Điều hướng. Nó đóng một ứng dụng cơ bản cho phép bạn điều hướng trong ứng dụng của mình.
Để thử nghiệm với ví dụ này, bạn cần chạy ứng dụng này trên thiết bị thực hoặc trong trình giả lập.
| Các bước | Sự miêu tả |
|---|---|
| 1 | Bạn sẽ sử dụng Android studio để tạo ứng dụng Android theo gói com.example.sairamkrishna.myapplication. |
| 2 | Sửa đổi tệp src / MainActivity.java để thêm mã Hoạt động. |
| 3 | Tạo một hoạt động mới với tên của second_main.java và chỉnh sửa nó để thêm mã hoạt động. |
| 4 | Sửa đổi tệp XML bố trí res / layout / activity_main.xml thêm bất kỳ thành phần GUI nào nếu cần. |
| 5 | Sửa đổi tệp XML bố trí res / layout / second.xml thêm bất kỳ thành phần GUI nào nếu cần. |
| 6 | Sửa đổi AndroidManifest.xml để thêm mã cần thiết. |
| 7 | 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.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; public class MainActivity extends Activity { Button b1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); b1 = (Button) findViewById(R.id.button); b1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent in=new Intent(MainActivity.this,second_main.class); startActivity(in); } }); } }Đây là nội dung của src / second_main.java .
package com.example.sairamkrishna.myapplication; import android.app.Activity; import android.os.Bundle; import android.webkit.WebView; import android.webkit.WebViewClient; /** * Created by Sairamkrishna on 4/6/2015. */ public class second_main extends Activity { WebView wv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main_activity2); wv = (WebView) findViewById(R.id.webView); wv.setWebViewClient(new MyBrowser()); wv.getSettings().setLoadsImagesAutomatically(true); wv.getSettings().setJavaScriptEnabled(true); wv.loadUrl("http://www.tutorialspoint.com"); } private class MyBrowser extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } } }Đây là nội dung của activity_main.xml .
Trong đoạn mã dưới đây abc cho biết logo của tutorialspoint.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 : Công cụ "@ dimen / activity_vertical_margin" : context = ".MainActivity" android: transitionGroup = "true" > <TextView android: text = "Ví dụ điều hướng" 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 = "Hướng dẫn điểm" android: id = "@ + id / textView" android: layout_below = "@ + id / textview" android: layout_centerHorizontal = "true" android: textColor = "# ff7aff24" android: textSize = "35dp" /> <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" android: theme = "@ style / Base.TextAppearance.AppCompat" /> <Button android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "trang đầu tiên" android: id = "@ + id / nút" android: layout_below = "@ + id / imageView" android: layout_alignRight = "@ + id / textView" android: layout_alignEnd = "@ + id / textView" android: layout_marginTop = "61dp" android: layout_alignLeft = "@ + id / imageView" android: layout_alignStart = "@ + id / imageView" /> </ RelativeLayout>Đây là nội dung của activity_main_activity2.xml .
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:weightSum="1"> <WebView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/webView" android:layout_gravity="center_horizontal" android:layout_weight="1.03" /> </LinearLayout>Đây là nội dung của Strings.xml .
<resources> <string name="app_name">My Application</string> </resources>Đây là nội dung của 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"></uses-permission> <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> <activity android:name=".second_main"></activity> </application> </manifest>Hãy thử chạy ứng dụng của bạn. Tôi cho rằng bạn đã tạo AVD của mình trong khi thiết lập môi trường.
Để chạy ứng dụng từ Android studio, 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ụ.
Android studio cài đặt ứng dụng trên AVD của bạn và khởi động ứng dụng và nếu mọi thứ đều ổn với thiết lập và ứng dụng của bạn, ứng dụng sẽ hiển thị sau cửa sổ Trình mô phỏng
Bây giờ chỉ cần nhấn vào nút và màn hình sau đây sẽ được hiển thị cho bạn.

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