Hướng dẫn lập trình cơ bản với Android - Phần 15
package at.exam;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class Receiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent
intent) {
long value = intent.getLongExtra("new
value", -10) + 10;
Toast toast = Toast.makeText(context,
"Broadcast Receiver catch an Intent"
+ " \n" + "The value is stored in
the Intent is "
+ String.valueOf(value),
Toast.LENGTH_LONG);
toast.show();
}
}
B6: Tạo BroadCast Receiver để nhận Intent mà Activity2 gửi tới -> Tạo 1 file Receiver.java trong at.exam -> Nội dung: Mã: package at.exam; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.widget.Toast; public class Receiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { long value = intent.getLongExtra("new value", -10) + 10; Toast toast = Toast.makeText(context, "Broadcast Receiver catch an Intent" + " \n" + "The value is stored in the Intent is " + String.valueOf(value), Toast.LENGTH_LONG); toast.show(); } } Code không hề khó hiểu, và mình cũng đã add comment. Chỉ cần lưu ý ở đây là Toast là lớp để hiển thị một thông báo đơn giản trong 1 khoảng thời gian cố định, và ko thể thay đổi thời gian này T_T (why???) chỉ có thể chọn giữa LENGTH_SHORT với LENGTH_LONG B7: Bổ sung thêm thông tin về component mới vào AndroidManifest.xml: Mã: <manifest xmlns:android=" id" package="at.exam" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".Activity1" android:label="@string/app_name"> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> <activity android:name=".Activity2"> <receiver android:name=".Receiver">
File đính kèm:
- Hướng dẫn lập trình cơ bản với Android - Phần 15.pdf