Notifications

Notification is a message that will be displayed to the user outside of the application’s usual UI.

When you execute a command telling the system to issue a notification, it will appear as an icon in the notification area, and to see the details, the user opens the notification space.

The notification space is this area where the details are shown (also called the notification drawer) are areas controlled by the system and the user can see at any time.

Creation of a Notification

  • To specify actions and information that will be displayed to the user, use a Notification.Builder object.

  • To create a push notification, use Notification.Builder.build(), which is an example of the type of notification provided as previously defined specifications.

  • To notify a notification, simply pass the Notification object using NotificationManager.getInstance().Notify();

Content Needed to Create a Notification

The object on smartphones should contain the following:

  • A title, defined by title();

  • Detail text, defined by text();

A Simple Example

HelloTCNotification
import totalcross.notification.Notification;
import totalcross.notification.NotificationManager;
import totalcross.sys.Settings;
import totalcross.ui.Button;
import totalcross.ui.Edit;
import totalcross.ui.MainWindow;
public class HelloWorld extends MainWindow {
private Button btnHello;
public HelloWorld(){
super("", NO_BORDER);
Settings.uiAdjustmentsBasedOnFontHeight = true;
setUIStyle(Settings.Material);
}
public void initUI() {
Edit title = new Edit("Title");
title.caption = "Title";
add(title, LEFT+150, TOP+100, FILL-150, PREFERRED);
Edit text = new Edit("Text");
text.caption = "Text";
add(text, LEFT+150, AFTER+50, FILL-150, PREFERRED);
btnHello = new Button("Notify!");
btnHello.addPressListener(
(e) -> {
Notification.Builder builder = new Notification.Builder();
Notification notification = builder
.title(title.getText())
.text(text.getText())
.build();
NotificationManager.getInstance().notify(notification);
});
add(btnHello, CENTER, AFTER+150, PARENTSIZE+38, PARENTSIZE+8);
}
}

References