======Alert======
The **Alert** method shows a popup message on the screen which stays on
screen until the user presses the Ok button or back button.
app.Alert( text, title, options, hue );
----
=====Options=====
^ Option ^ Description ^
| "NoDim" | Set the background transparent |
=====Examples=====
====No Title====
function OnStart()
{
app.Alert( "Hello World!" );
}
====Custom Title====
function OnStart()
{
app.Alert( "Hello World!", "Message" );
}
====Custom Hue====
The argument [[built_in:hue|hue]] represents the color of the title text and the horizontal line below.
//Orange title and horizontal line
function OnStart()
{
app.Alert( "Hello World!", "Message", "", 180 );
}
{{ https://i.imgur.com/TUgy5Cd.jpg }}
======HTML Alert======
Normally it is not possible to use HTML tags in an alert. But if you add the following function to your script
function HtmlAlert( text, clr1, title, clr2, bclr )
{
//background-layout
htmlAlertLayout = app.CreateLayout( "linear", "VCenter,FillXY" );
htmlAlertLayout.Animate( "FadeIn", "", 100 );
htmlAlertLayout.SetBackColor( [bclr.slice(0, 1), "33", bclr.slice(1)].join('') );
//alert-layout
htmlAlert = app.CreateLayout( "linear", "Left" );
htmlAlert.SetBackColor( bclr );
htmlAlert.SetSize( 0.8, 0.2 );
//title-text
htmlAlertTitle = app.CreateText( title );
htmlAlertTitle.SetTextSize( 30 );
htmlAlertTitle.SetMargins( 0.02 );
htmlAlertTitle.SetTextColor( clr2 );
//horizontal line below
htmlAlertHr = app.CreateText( "", 1, 0.002 );
htmlAlertHr.SetBackColor( clr2 );
//text in alert
htmlAlertText = app.CreateText( "", 0.8, 100, "Multiline,Left");
htmlAlertText.SetMargins( 0.02 );
htmlAlertText.SetHtml( text );
htmlAlertText.SetTextColor( clr1 );
//horizontal line below
htmlAlertHr2 = app.CreateText( "", 0.8, 0.002 );
htmlAlertHr2.SetBackColor( clr2 );
//"Ok" button
htmlAlertButton = app.CreateText( "Ok", 0.8, 0.055 );
htmlAlertButton.SetPadding( 0, 0.01 );
htmlAlertButton.SetBackColor( bclr );
htmlAlertButton.SetTextColor( clr1 );
htmlAlertButton.SetOnTouchUp( function() { htmlAlertLayout.Animate( "FadeOut", "", 100 ); app.RemoveLayout( htmlAlertLayout ); } );
//add objects to app
htmlAlert.AddChild( htmlAlertTitle );
htmlAlert.AddChild( htmlAlertHr );
htmlAlert.AddChild( htmlAlertText );
htmlAlertLayout.AddChild( htmlAlert );
htmlAlertLayout.AddChild( htmlAlertHr2 );
htmlAlertLayout.AddChild( htmlAlertButton );
app.AddLayout( htmlAlertLayout);
}
and call the method for example like that
//Called when application is started.
function OnStart()
{
app.EnableBackKey( false );
lay = app.CreateLayout( "linear" );
lay.SetSize( 1, 1 );
lay.SetBackColor( "#fff56f" );
app.AddLayout( lay );
}
function OnBack()
{
HtmlAlert( "text
text
text", "#fff56f", "title", "#fff56f", "#121212" );
}
Then you are able to use HTML tags in an alert.
{{ https://i.imgur.com/U7oeTsO.jpg }}