Explicit Intent Trong Android
Explicit Intents là những intent đã chỉ rõ thành phần sẽ nhận và xử lý. Thông thường những intent này sẽ không cần gán bổ sung thêm các thuộc tính khác như action, data. Explicit Intent thường được sử dụng để khởi chạy các activity, hoặc service trong cùng 1 ứng dụng.
Đoạn code ví dụ dưới đây là xây dựng chương trình gồm 2 Activity. Khởi động ứng dụng, Activity1 được chạy đầu tiên. Khi người dung nhấn vào button cho phép khởi chạy Activity2.
Intent intent = new Intent(getApplicationContext(), SecondActivity.class); startActivity(intent);
Ví dụ: Trong ví dụ này chúng ta sẽ làm ứng dụng gồm có 1 Button. Khi người sử dụng click vào "Ví dụ Explicit Intent" sẽ mở 1 Activity khác.Tiến hành tạo project, vào thư mục res /layout -> activity_main.xml thiết kế giao diện sau:
Bước 1: Tạo một project tên là ExplicittIntents: File->New->Android Application Project điền các thông tin ->Next ->Finish
Bước 2: Mở res -> layout -> xml (hoặc) activity_main.xml và thêm code.
<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:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="hiepsiit.com.explicitintent.MainActivity" > <Button android:id="@+id/explicit_Intent" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Ví dụ Explicit Intent" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="147dp" /> </RelativeLayout>
Bước 3: Tạo thêm Activity Android đặt tên SecondActivity
Thiết kế second_activity.xml :
<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:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="hiepsiit.com.explicitintent.SecondActivity" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:text="This is Second Activity" android:id="@+id/textView" android:background="#f00" android:layout_centerVertical="true" android:layout_centerHorizontal="true" /> </RelativeLayout>
Code java SecondActivity.java:
package hiepsiit.com.explicitintent; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; public class SecondActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); } }
Bước 3: Mở src -> package -> MainActivity.java
Trong bước này chúng ta khỏi tạo Button, đồng thời thiết lập sự kiện cho Button. Khi người sử dụng click vào Button "Ví dụ Explicit Intent" sẽ mở một Activity mới thông quá đối tượng Intent.
package hiepsiit.com.explicitintent; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; public class MainActivity extends Activity { Button explicit_btn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); explicit_btn = (Button)findViewById(R.id.explicit_Intent); explicit_btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(getBaseContext(), SecondActivity.class); startActivity(intent); } }); } }
Ứng dụng này được phát triển bởi adt bundle, android 4.2 sử dụng minimum sdk 8 and target sdk 21.
Kết quả khi chạy ứng dụng
Click vào Button "Ví dụ Explicit Intent"
Cập nhật công nghệ từ Youtube tại link: https://www.youtube.com/channel/UCOxeYcvZPGf-mGLYSl_1LuA/videos
Để tham gia khóa học công nghệ truy cập link: http://thuvien.hocviendaotao.com
Mọi hỗ trợ về công nghệ email: dinhanhtuan68@gmail.com