【发布时间】:2020-05-24 14:52:03
【问题描述】:
我想使用处理程序将一些消息从一个线程发送到另一个线程。但实际上不知道如何实现它。在下面的代码中,我想将消息从广播接收器类发送到片段。但我不知道如何实现这个。
片段分节代码:
Calendar calendar= Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.set(Calendar.HOUR_OF_DAY,16);
calendar.set(Calendar.MINUTE,42);
calendar.set(Calendar.SECOND,0);
Intent intent =new Intent(getContext(),NotificationActivity.class);
intent.putExtra("id",R.id.notification_imageView);
PendingIntent pendingIntent =
PendingIntent.getBroadcast(getContext(),100,intent,PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager=(AlarmManager) getActivity().getSystemService(ALARM_SERVICE);
System.out.println("DEBUG==> Instantiating Alarm Manager Service");
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,calendar.getTimeInMillis(),1000 * 60 *
02,pendingIntent);
BroadcastReceiever 类 --ClassNotificationActivity.class
public class NotificationActivity extends BroadcastReceiver {
private View view;
@Override
public void onReceive(Context context, Intent intent) {
ImageView img;
System.out.println("DEBUG==> Page Notification Activity is being loaded");
View view = View.inflate(context, R.layout.Samplelayout, null);
img = view.findViewById(R.id.imageview);
System.out.println("DEBUG==> Loading bulb Image for Animation"+img);
System.out.println("DEBUG==> Loading bulb Image for Animation");
Animation animation = new AlphaAnimation((float) 0.5, 0); // Change alpha from fully visible to
invisible
animation.setDuration(500); // duration - half a second--2 minutes
animation.setRepeatCount(200);
img.startAnimation(animation);
}
}
Manifest.xml
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.SET_ALARM" />
<receiver android:name=".view.ui.NotificationActivity" />
Samplelayout.xml:
<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/red"
android:gravity="center_horizontal"
android:orientation="vertical">
<ImageView
android:id="@+id/imageview"
android:layout_width="70dp"
android:layout_height="64dp"
android:layout_margin="20dp"
android:src="@drawable/Dumble"
android:tint="@android:color/white"
tools:layout_editor_absoluteX="32dp"
tools:layout_editor_absoluteY="32dp" />
</LinearLayout>
【问题讨论】:
标签: android broadcastreceiver android-handler