java如何在Android中创建计时器?
我有以下方法:
public NotificationCompat.Builder createNotification(Context context) {
Intent intent = new Intent(this, MapsActivity.class);
PendingIntent pIntent = PendingIntent.getActivity(this, (int) System.currentTimeMillis(), intent, 0);
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
boolean running = true;
builder = new NotificationCompat.Builder(context)
.setContentText("conteúdo")
.setContentTitle("titulo")
.setSmallIcon(R.drawable.ic_today_black_24dp)
.setAutoCancel(false)
.setOnlyAlertOnce(true)
.setOngoing(running)
.setContentIntent(
PendingIntent.getActivity(context, 10,
new Intent(context, MapsActivity.class)
.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP),
0)
)
.addAction(running ? R.drawable.ic_stop_black_24dp
: R.drawable.ic_play_arrow_black_24dp,
running ? "Pause"
: "play",
pIntent)
.addAction(R.drawable.ic_stop_black_24dp, "Stop",
pIntent);
notificationManager.notify(0, builder.build());
return builder;
}
其中在状态栏中启动了一个通知,如第一个通知中所示:
要链接通知,请执行以下操作:
NotificationCompat.Builder notification = createNotification(this);
NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(0, notification.build());
我想在一个通知中创建一个计时表,与Strava通知(图像的第二个通知)中显示的完全一样,如上所示
如何在通知中创建Chronometer
# 1 楼答案
您可以使用内置计时器:
# 2 楼答案
因此,如果你知道如何使用
Layouts
,那么创建应用程序小部件布局很简单。然而,你必须意识到应用程序小部件的布局是基于RemoteViews
的,它不支持所有类型的布局或视图小部件。无论如何,如果你需要应用程序小部件布局的支持,这里有一些参考: https://developer.android.com/guide/practices/ui_guidelines/widget_design.html幸运的是
RemoteViews
支持Chronometer
,正如您可以从开发者webiste中看到的:https://developer.android.com/guide/topics/appwidgets/index.html#CreatingLayoutA我想你可以像往常一样访问你的
Chronometer
,你可以做这样的事情,这取决于你想让它暂停、恢复,或者其他什么: