Float
Float is a single-precision 4 byte floating-point type with an approximate range of 1.2E-38 to 3.4E+38.
The default value of a Float is 0.0. You can change the default value of the property by assigning a new value in an overridden reset method.
float is a single-precision 4 byte floating-point type with an approximate range of 1.2E-38 to 3.4E+38.
The default value of a float is 0.0. You can change the default value of the property by assigning a new value in an overridden reset method.
float properties should be declared in your APLConfiguration subclass header file as follows:
@import AppfigurateLibrary;
@interface Configuration : APLConfiguration
@property(nonatomic, assign) float propertyName;
...Float is a single-precision 4 byte floating-point type with an approximate range of 1.2E-38 to 3.4E+38.
The default value of a Float is 0.0f. You can change the default value of the property by assigning a new value in an overridden reset method.
float is a single-precision 4 byte floating-point type with an approximate range of 1.2E-38 to 3.4E+38.
The default value of a float is 0.0f. You can change the default value of the property by assigning a new value in an overridden reset method.
The flutter APLNativeConfiguration class defers to the underlying platform APLConfiguration (iOS) or nz.co.electricbolt.appfiguratelibrary.Configuration (Android) subclass to read property values.
As Dart doesn't have a single-precision float data type, you should map to a double-precision double data type instead:
double
Float
float
Float
float
The React Native module AppfigurateModule class defers to the underlying platform APLConfiguration (iOS) or nz.co.electricbolt.appfiguratelibrary.Configuration (Android) subclass to read property values.
React Native always converts the underlying Float to a JavaScript Number - you should be aware of JavaScript's 53 bit limitation.
Local properties
Slider UI
Allows a float property to be changed in Appfigurate using a slider between minimum and maximum values.

Swift prototype
@FloatPropertySlider(min, max, icon, description, restart)
var propertyName: FloatYou can customize the minimum and maximum images using the icon parameter. If restart is true, then the app will be restarted if the property value changes.
Swift example
import AppfigurateLibrary
@objcMembers class Configuration: APLConfiguration {
@FloatPropertySlider(min: 60.5, max: 120.41, icon: .volume, description: "Clipping - decibels", restart: false)
var maxDecibel: Float
override func reset() {
maxDecibel = 100.0
}
...Objective-C Prototype
FLOAT_PROPERTY_SLIDER(propertyName, minValue, maxValue, icon, description, restart)You can customize the minimum and maximum images using the icon parameter. If restart is YES, then the app will be restarted if the property value changes.
Objective-C example
@import AppfigurateLibrary;
@interface Configuration : APLConfiguration
@property(nonatomic, assign) float maxDecibel;
@end
@implementation Configuration
FLOAT_PROPERTY_SLIDER(maxDecibel, 60.5, 120.41, APLIconSliderVolume, @"Clipping - decibels", NO);
- (void) reset {
self.maxDecibel = 100.0;
}
...Kotlin prototype
@FloatPropertySlider(description, minValue, maxValue, sliderIcon, restart)
var propertyName = 0.0fYou can customize the minimum and maximum images using the sliderIcon parameter. If restart is true, then the app will be restarted if the property value changes.
Kotlin example
import nz.co.electricbolt.appfiguratelibrary.Configuration
import nz.co.electricbolt.appfiguratelibrary.annotations.FloatPropertySlider
import nz.co.electricbolt.appfiguratelibrary.annotations.IconSlider
class AppConfiguration : Configuration() {
@FloatPropertySlider(minValue = 60.5f, max = 120.41f, sliderIcon = IconSlider.IconSliderVolume, description = "Clipping - decibels", restart = false)
var maxDecibel = 0.0f
override fun reset() {
maxDecibel = 100.0f
}
...Java prototype
@FloatPropertySlider(description, minValue, maxValue, sliderIcon, restart)
float propertyName;You can customize the minimum and maximum images using the sliderIcon parameter. If restart is true, then the app will be restarted if the property value changes.
Java example
import nz.co.electricbolt.appfiguratelibrary.Configuration;
import nz.co.electricbolt.appfiguratelibrary.annotations.FloatPropertySlider;
import nz.co.electricbolt.appfiguratelibrary.annotations.IconSlider;
public class AppConfiguration extends Configuration {
@FloatPropertySlider(minValue = 60.5f, max = 120.41f, sliderIcon = IconSlider.IconSliderVolume, description = "Clipping - decibels", restart = false)
public float maxDecibel;
@Override
public void reset() {
this.maxDecibel = 100.0f;
}
...Dart prototype
double get propertyName => nativeDouble('propertyName');Dart example
import 'package:appfigurateflutter/appfigurateflutter.dart';
public class Configuration extends APLNativeConfiguration {
double get maxDecibel => nativeDouble('maxDecibel');
...JavaScript example
import {
NativeModules,
} from 'react-native';
const {Appfigurate} = NativeModules;
...
let maxDecibel = await Appfigurate.nativeValue("maxDecibel"); // NumberEditable UI
Allows a float property to be changed in Appfigurate using a text field between minimum and maximum values, and an optional regular expression validating input.

Swift prototype
@FloatPropertyEdit(min, max, regex, description, restart)
var propertyName: FloatIf restart is true, then the app will be restarted if the property value changes.
Swift example
import AppfigurateLibrary
@objcMembers class Configuration: APLConfiguration {
@FloatPropertyEdit(min: -2.1, max: 4.1, regex: "", description: "Shot accuracy", restart: false)
var shotAccuracy: Float
override func reset() {
shotAccuracy = 3.241
}
...Objective-C prototype
FLOAT_PROPERTY_EDIT(propertyName, minValue, maxValue, regex, description, restart)If restart is YES, then the app will be restarted if the property value changes.
Objective-C example
@import AppfigurateLibrary;
@interface Configuration : APLConfiguration
@property(nonatomic, assign) float shotAccuracy;
@end
@implementation Configuration
FLOAT_PROPERTY_EDIT(shotAccuracy, -2.1, 4.1, @"", @"Shot accuracy", NO);
- (void) reset {
self.shotAccuracy = 3.241;
}
...Kotlin prototype
@FloatPropertyEdit(description, minValue, maxValue, regularExpression, restart)
var propertyName = 0.0fIf restart is true, then the app will be restarted if the property value changes.
Kotlin example
import nz.co.electricbolt.appfiguratelibrary.Configuration
import nz.co.electricbolt.appfiguratelibrary.annotations.FloatPropertyEdit
class AppConfiguration : Configuration() {
@FloatPropertyEdit(description = "Shot accuracy", minValue = -2.1f, maxValue = 4.1f, regularExpression = "", restart = false)
var shotAccuracy = 0.0f
override fun reset() {
shotAccuracy = 3.241f
}
...Java prototype
@FloatPropertyEdit(description, minValue, maxValue, regularExpression, restart)
float propertyName;If restart is true, then the app will be restarted if the property value changes.
Java example
import nz.co.electricbolt.appfiguratelibrary.Configuration;
import nz.co.electricbolt.appfiguratelibrary.annotations.FloatPropertyEdit;
public class AppConfiguration extends Configuration {
@FloatPropertyEdit(description = "Shot accuracy", minValue = -2.1f, maxValue = 4.1f, regularExpression = "", restart = false)
public float shotAccuracy;
@Override
public void reset() {
this.shotAccuracy = 3.241f;
}
...Dart prototype
double get propertyName => nativeDouble('propertyName');Dart example
import 'package:appfigurateflutter/appfigurateflutter.dart';
public class Configuration extends APLNativeConfiguration {
double get shotAccuracy => nativeDouble('shotAccuracy');
...JavaScript example
import {
NativeModules,
} from 'react-native';
const {Appfigurate} = NativeModules;
...
let shotAccuracy = await Appfigurate.nativeValue("shotAccuracy"); // NumberList UI
Allows a float property to be changed in Appfigurate by allowing the user to select from a predefined list of valid choices.

Swift prototype
@FloatPropertyList(description, restart, values)
var propertyName: FloatIf restart is true, then the app will be restarted if the property value changes.
Swift example
import AppfigurateLibrary
@objcMembers class Configuration: APLConfiguration {
@FloatPropertyList(description: "Quality rating", restart: true, values: ["Low": 10.0, "Average": 50.0, "Excellent": 95.0])
var rating: Float
override func reset() {
rating = 10.0
}
...Objective-C prototype
FLOAT_PROPERTY_LIST(propertyName, description, restart, ...)If restart is YES, then the app will be restarted if the property value changes.
Objective-C example
@import AppfigurateLibrary;
@interface Configuration : APLConfiguration
@property(nonatomic, assign) float rating;
@end
@implementation Configuration
FLOAT_PROPERTY_LIST(rating, @"Quality rating", NO, @{@"Low": @10.0, @"Average": @50.0, @"Excellent": @95.0});
- (void) reset {
self.rating = 10.0;
}
...Kotlin prototype
@FloatPropertyList(description, keys, values, restart)
var propertyName = 0.0fIf restart is true, then the app will be restarted if the property value changes.
Kotlin example
import nz.co.electricbolt.appfiguratelibrary.Configuration
import nz.co.electricbolt.appfiguratelibrary.annotations.FloatPropertyList
class AppConfiguration : Configuration() {
@FloatPropertyList(description = "Quality rating", keys = ["Low", "Average", "Excellent"], values = [10.0f, 50.0f, 95.0f], restart = false)
var rating = 0.0f
override fun reset() {
rating = 10.0f
}
...Java prototype
@FloatPropertyList(description, keys, values, restart)
float propertyName;If restart is true, then the app will be restarted if the property value changes.
Java example
import nz.co.electricbolt.appfiguratelibrary.Configuration;
import nz.co.electricbolt.appfiguratelibrary.annotations.FloatPropertyList;
public class AppConfiguration extends Configuration {
@FloatPropertyList(description = "Quality rating", keys = {"Low", "Average", "Excellent"}, values = {10.0f, 50.0f, 95.0f}, restart = false)
public float rating;
@Override
public void reset() {
this.rating = 10.0f;
}
...Dart prototype
double get propertyName => nativeDouble('propertyName');Dart example
import 'package:appfigurateflutter/appfigurateflutter.dart';
public class Configuration extends APLNativeConfiguration {
double get rating => nativeDouble('rating');
...JavaScript example
import {
NativeModules,
} from 'react-native';
const {Appfigurate} = NativeModules;
...
let rating = await Appfigurate.nativeValue("rating"); // NumberEditable List UI
Allows a float property to be changed in Appfigurate by allowing the user to select from a predefined list of valid choices. The user can customize the list adding by additional values using a text field between minimum and maximum values, and an optional regular expression validating input.

Swift prototype
@FloatPropertyListEdit(min, max, regex, description, restart, values)
var propertyName: FloatIf restart is true, then the app will be restarted if the property value changes.
Swift example
import AppfigurateLibrary
@objcMembers class Configuration: APLConfiguration {
@FloatPropertyListEdit(min: 0.0, max: 366.0, regex: #"^(0?[0-9]?[0-9]|[1-2][0-9][0-9]|3[0-5][0-9]|36[0-5])?(?:\.\d+)?$"#, description: "Forward server time (days)", restart: false, values: ["7 days": 7.0, "1 month": 30.0, "1 Year": 365.0])
var forwardServerTime: Float
override func reset() {
forwardServerTime = 7.0
}
...Objective-C prototype
FLOAT_PROPERTY_LIST_EDIT(propertyName, minValue, maxValue, regex, description, restart, ...)If restart is YES, then the app will be restarted if the property value changes.
Objective-C example
@import AppfigurateLibrary;
@interface Configuration : APLConfiguration
@property(nonatomic, assign) float forwardServerTime;
@end
@implementation Configuration
FLOAT_PROPERTY_LIST_EDIT(forwardServerTime, 0.0, 366.0, @"^(0?[0-9]?[0-9]|[1-2][0-9][0-9]|3[0-5][0-9]|36[0-5])?(?:\\.\\d+)?$", @"Forward server time (days)", NO, @{@"7 days": @7.0, @"1 month": @30.0, @"1 Year": @365.0});
- (void) reset {
self.forwardServerTime = 7.0;
}
...Kotlin prototype
@FloatPropertyListEdit(description, regularExpression, minValue, maxValue, keys, values, restart)
var propertyName = 0.0fIf restart is true, then the app will be restarted if the property value changes.
Kotlin example
import nz.co.electricbolt.appfiguratelibrary.Configuration
import nz.co.electricbolt.appfiguratelibrary.annotations.FloatPropertyListEdit
class AppConfiguration : Configuration() {
@FloatPropertyListEdit(description = "Forward server time (days)", minValue = 0.0f, maxValue = 366.0f, regularExpression = "^(0?[0-9]?[0-9]|[1-2][0-9][0-9]|3[0-5][0-9]|36[0-5])$", keys = ["7 days", "1 month", "1 Year"], values = [7.0f, 30.0f, 365.0f], restart = false)
var forwardServerTime = 0.0f
override fun reset() {
forwardServerTime = 7.0f
}
...Java prototype
@FloatPropertyListEdit(description, regularExpression, minValue, maxValue, keys, values, restart)
float propertyName;If restart is true, then the app will be restarted if the property value changes.
Java example
import nz.co.electricbolt.appfiguratelibrary.Configuration;
import nz.co.electricbolt.appfiguratelibrary.annotations.FloatPropertyListEdit;
public class AppConfiguration extends Configuration {
@FloatPropertyListEdit(description = "Forward server time (days)", minValue = 0.0f, maxValue = 366.0f, regularExpression = "^(0?[0-9]?[0-9]|[1-2][0-9][0-9]|3[0-5][0-9]|36[0-5])$", keys = {"7 days", "1 month", "1 Year"}, values = {7.0f, 30.0f, 365.0f}, restart = false)
public float forwardServerTime;
@Override
public void reset() {
this.forwardServerTime = 7.0f;
}
...Dart prototype
double get propertyName => nativeDouble('propertyName');Dart example
import 'package:appfigurateflutter/appfigurateflutter.dart';
public class Configuration extends APLNativeConfiguration {
double get forwardServerTime => nativeDouble('forwardServerTime');
...JavaScript example
import {
NativeModules,
} from 'react-native';
const {Appfigurate} = NativeModules;
...
let forwardServerTime = await Appfigurate.nativeValue("forwardServerTime"); // NumberLast updated