Interface IWebView<TEvent, TMobile>

Since

0.1

Example

import WebView from '@smartface/native/ui/webview';
import Flex from '@smartface/native/ui/flexlayout'

var myWebView = new WebView({
left:10, top:10, right:10, bottom:10,
positionType: Flex.PositionType.ABSOLUTE,
onChangedURL: function(event) {
console.log("Event Change URL: " + event.url);
},
onError: function(event) {
console.log("Event Error : " + event.message + ", URL: " + event.url);
},
onLoad: function(event) {
console.log("Event Load: " + event.url);
},
onShow: function(event) {
console.log("Event Show: " + event.url);
}
});
page.layout.addChild(myWebView);
myWebView.loadURL('https://www.google.com');

Type Parameters

Hierarchy

Properties

nativeObject: any
transitionId: string

Gets/sets the transitionId to be used for transitionViews. See transitionViews for more information

Property

Android

Ios

Since

0.1

accessible: boolean

Gets/sets whether the view is an accessibility element that an assistive app can access.

Property

Android

Ios

Member

UI.View

Since

4.3.2

accessibilityLabel: string

A content description briefly describes the view. VoiceOver will read this string when a user selects the associated element.

Property

Android

Ios

Member

UI.View

Since

4.3.2

alpha: number

Defines the opacity of a view. The value of this property is a float number between 0.0 and 1.0. 0 represents view is completely transparent and 1 represents view is completely opaque.

Property

= 1]

Android

Ios

Member

UI.View

Since

0.1

backgroundColor: ViewState<IColor>

Gets/sets background color of a view. It allows setting background color with UI.Color instance.

Property

= UI.Color.WHITE]

Android

Ios

Member

UI.View

Since

0.1

borderColor: IColor

Sets/gets border color of bounded view.

Property

= UI.Color.BLACK]

Android

Ios

Since

0.1

borderWidth: number

Sets/gets border thickness of bounded view. Accepts unsigned numbers, 0 means no border.

Property

= 0]

Android

Ios

Since

0.1

borderRadius: number

Sets/gets corner radius of a view. BorderRadius maximum value must be half of the shortest edge.

Property

= 0]

Android

Ios

Since

0.1

borderTopLeftRadius: number

Sets/gets top-left corner radius of a view.

Property

= 0]

Android

Ios

Since

5.0.3

Deprecated

since 5.1.1 Use the borderRadiusEdges property instead. Also android.borderTopLeftRadius is available on Android.

borderTopRightRadius: number

Sets/gets top-right corner radius of a view.

Property

= 0]

Android

Ios

Since

5.0.3

Deprecated

since 5.1.1 Use the borderRadiusEdges property instead. Also android.borderTopRightRadius is available on Android.

borderTopStartRadius: number

Sets/gets top-start corner radius of a view.

Property

= -1]

Android

Ios

Since

5.0.3

Deprecated

since 5.1.1 Use the borderRadiusEdges property instead. Also android.borderTopStartRadius is available on Android.

borderTopEndRadius: number

Sets/gets top-end corner radius of a view.

Property

= -1]

Android

Ios

Since

5.0.3

Deprecated

since 5.1.1 Use the borderRadiusEdges property instead. Also android.borderTopEndRadius is available on Android.

borderBottomLeftRadius: number

Sets/gets bottom-left corner radius of a view.

Property

= 0]

Android

Ios

Since

5.0.3

Deprecated

since 5.1.1 Use the borderRadiusEdges property instead. Also android.borderBottomLeftRadius is available on Android.

borderBottomRightRadius: number

Sets/gets bottom-right corner radius of a view.

Property

= 0]

Android

Ios

Since

5.0.3

Deprecated

since 5.1.1 Use the borderRadiusEdges property instead. Also android.borderBottomRightRadius is available on Android.

borderBottomStartRadius: number

Sets/gets bottom-start corner radius of a view.

Property

= -1]

Android

Ios

Since

5.0.3

Deprecated

since 5.1.1 Use the borderRadiusEdges property instead. Also android.borderBottomStartRadius is available on Android.

borderBottomEndRadius: number

Sets/gets bottom-end corner radius of a view.

Property

= -1]

Android

Ios

Since

5.0.3

Deprecated

since 5.1.1 Use the borderRadiusEdges property instead. Also android.borderBottomEndRadius is available on Android.

id: number

Gets/sets id of a view. It should be unique number for each object inside page. Id will be generated unique by default.

Property

Android

Ios

Member

UI.View

Since

0.1

testId: string

Gets/sets test id for view. resource-id for android; accessibilityIdentifier for iOS.

Property

Android

Ios

Member

UI.View

Since

4.3.2

visible: boolean

Gets/sets visibility of view. It is set to true as default.

Property

= true]

Android

Ios

Member

UI.View

Since

0.1

rotation: number

Gets/sets the degrees that the view is rotated around the pivot point.

Property

= 0]

Android

Ios

Member

UI.View

Since

1.1.10

rotationX: number

Gets/sets the degrees that the view is rotated around the horizontal axis through the pivot point. RotationX works different for iOS and Android. Android gives perpective to the view but iOS doesn't. This will cause difference on user interface.

Property

= 0]

Android

Ios

Member

UI.View

Since

1.1.10

rotationY: number

Gets/sets the degrees that the view is rotated around the vertical axis through the pivot point. RotationY works different for iOS and Android. Android gives perpective to the view but iOS doesn't. This will cause difference on user interface.

Property

= 0]

Android

Ios

Member

UI.View

Since

1.1.10

touchEnabled: boolean

Enables/disables touches to view. When set to false events related to touches won't fire. It is set to true as default.

Property

= true]

Android

Ios

Member

UI.View

Since

0.1

left: number

Gets/sets left position of a view relative to its parent.

Property

= 0]

Android

Ios

Since

0.1

top: number

Gets/sets top position of a view relative to its parent.

Property

= 0]

Android

Ios

Since

0.1

right: number

Gets/sets right position of a view relative to its parent. This property works only if view's positionType is UI.FlexLayout.PositionType.ABSOLUTE.

Property

= 0]

Android

Ios

Since

0.1

bottom: number

Gets/sets bottom position of a view relative to its parent. This property works only if view's positionType is UI.FlexLayout.PositionType.ABSOLUTE.

Property

= 0]

Android

Ios

Since

0.1

height: number

Gets/sets height of a view.

Property

= 0]

Android

Ios

Since

0.1

width: number

Gets/sets width of a view.

Property

= 0]

Android

Ios

Since

0.1

minWidth: number

Gets/sets minimum width of a view.

Property

= 0]

Android

Ios

Since

0.1

minHeight: number

Gets/sets minimum height of a view.

Property

= 0]

Android

Ios

Since

0.1

maxWidth: number

Gets/sets maximum width of a view.

Property

= 0]

Android

Ios

Since

0.1

maxHeight: number

Gets/sets maximum height of a view.

Property

= 0]

Android

Ios

Since

0.1

paddingTop: number

Gets/Sets the padding space on the top side of a view.

Property

= 0]

Android

Ios

Since

0.1

paddingBottom: number

Gets/Sets the padding space on the bottom side of a view.

Property

= 0]

Android

Ios

Since

0.1

paddingLeft: number

Gets/Sets the padding space on the left side of a view.

Property

= 0]

Android

Ios

Since

0.1

paddingRight: number

Gets/Sets the padding space on the right side of a view.

Property

= 0]

Android

Ios

Since

0.1

padding: number

Gets/Sets the padding space on the all sides of a view.

Property

= 0]

Android

Ios

Since

0.1

marginTop: number

Gets/Sets the margin space on the top side of a view.

Property

= 0]

Android

Ios

Since

0.1

marginBottom: number

Gets/Sets the margin space on the bottom side of a view.

Property

= 0]

Android

Ios

Since

0.1

marginLeft: number

Gets/Sets the margin space on the left side of a view.

Property

= 0]

Android

Ios

Since

0.1

marginRight: number

Gets/Sets the margin space required on the right side of a view.

Property

= 0]

Android

Ios

Since

0.1

margin: number

Gets/Sets the margin space required on the all sides of a view.

Property

= 0]

Android

Ios

Since

0.1

positionType: Flex.PositionType

This property specifies the type of positioning method used for a view. To position a view relative to its parent with top,left,right and bottom properties you must set the position type to absolute.

Property

= UI.FlexLayout.PositionType.RELATIVE]

Android

Ios

Since

0.1

flexGrow: number

This property specifies how much a view will grow relative to the other views inside the same UI.FlexLayout FlexLayout.

Property

= 0]

Android

Ios

Since

0.1

aspectRatio: number

AspectRatio keeps the ratio between the width and the height of a view. AspectRatio has higher priority than UI.View#flexGrow flexGrow.

Property

Android

Ios

Since

0.1

flexShrink: number

This property specifies how much a view will shrink relative to the other views inside the same UI.FlexLayout FlexLayout.

Property

= 1]

Android

Ios

Since

0.1

flexBasis: number

This property specifies the initial length of a view in a UI.FlexLayout FlexLayout.

Property

= -1]

Android

Ios

Since

0.1

scale: Point2D

This property sets the amount that the view is scaled in X & Y around the pivot point, as a proportion of the view's unscaled width. A value of 1 means that no scaling is applied. Actually UI.flipVertically flipVertically & UI.flipHorizontally flipHorizontally functions are assignes -1 to X & Y to mirror the view. So while using scale, need to consider these functions.

Property

Android

Ios

Since

4.0.1

alignSelf: Flex.AlignSelf

This property specifies how a child view aligns in the cross-axis. It overrides the UI.FlexLayout.AlignItems FlexLayout.AlignItems property of the parent.

Property

= UI.FlexLayout.AlignSelf.AUTO]

Android

Ios

Since

0.1

masksToBounds: boolean

A Boolean indicating whether sublayers are clipped to the layer’s bounds. Android sublayers still overlaps the border's width and as known issue,if UI.View#maskedBorders maskedBorders is used then sublayer won't be clipped.

Property

= true]

Ios

Android

Since

4.1.4

borderRadiusEdges: BorderRadiusEdges

A Boolean indicating whether sublayers are clipped to the layer’s bounds. Android sublayers still overlaps the border's width and as known issue,if UI.View#borderRadiusEdges borderRadiusEdges is used then sublayer won't be clipped.

Property

= {topLeft: true, topRight: true, bottomLeft: true, bottomRight: true}]

Ios

Android

Since

5.1.1

maskedBorders: Border[]

Specified enums indicates that which corner of View will have radius.

Property

= [View.Border.TOP_LEFT, View.Border.TOP_RIGHT, View.Border.BOTTOM_RIGHT, View.Border.BOTTOM_LEFT]]

Ios

Android

Since

4.1.4

Deprecated

since 5.0.3 Use the borderRadiusEdges properties instead.

shadowColor: IColor

The color of the shadow. UI.View.ios#masksToBounds property must be false for shadow on iOS. On Android, this property only works on Android 9 and above.

Property

= UI.Color.BLACK]

Ios

Android

Since

5.0.3

parent: undefined | IView<"touch" | "touchCancelled" | "touchEnded" | "touchMoved", { [key: string]: any }, MobileOSProps<ViewIOSProps, ViewAndroidProps>>
uniqueId: string
onTouchMoved: ((e: boolean | { isInside: boolean }, point?: Point2D) => boolean)

Type declaration

    • (e: boolean | { isInside: boolean }, point?: Point2D): boolean
    • Deprecated

      This method is deprecated in favor of EventEmitter. You could get more details for the deprecated events from here https://docs.smartface.io/smartface-native-framework/tips-and-tricks/handling-events

      Example

      import View from '@smartface/native/ui/view';
      import FlexLayout from '@smartface/native/ui/flexlayout';
      import Button from '@smartface/native/ui/button';

      this.view1.on(View.Events.TouchMoved, (point) => {
      console.info('view onTouchMoved', point);
      });
      this.flexLayout1.on(FlexLayout.Events.TouchMoved, (point) => {
      console.info('flexLayout onTouchMoved', point);
      });
      this.button1.on(Button.Events.TouchMoved, (point) => {
      console.info('button onTouchMoved', point);
      });

      Parameters

      • e: boolean | { isInside: boolean }
      • Optional point: Point2D

      Returns boolean

getPosition: (() => { left: number; top: number; width: number; height: number })

Type declaration

    • (): { left: number; top: number; width: number; height: number }
    • Returns { left: number; top: number; width: number; height: number }

      • left: number
      • top: number
      • width: number
      • height: number
android: TMobile["android"]
ios: TMobile["ios"]
openLinkInside: boolean

Indicates whether the links clicked on the webview will be rendered inside the webview or not. Otherwise, the default browser of the device will handle that link.

Property

Android

Ios

Since

0.1

scrollEnabled: boolean

If this property is false then scrolling ability is no longer exist.

Property

Android

Ios

Since

1.1.16

userAgent: string

Sets/Gets the userAgent. On Android, if the string is null or empty, the system default value will be used. Changing the user-agent while loading a web page causes WebView to initiate loading once again. On iOS, default of userAgent property is empty string.

Property

Android

Ios

Since

4.1.1

scrollBarEnabled: boolean

Sets/Gets the visibility of scrollbar.

Property

Android

Ios

Since

1.1.12

bounceEnabled: boolean

Sets/Gets the bounce effect when scrolling.

Property

Deprecated

3.2.1 Use UI.WebView#bounces for iOS or Use UI.WebView#overScrollMode for Android.

Android

Ios

Since

1.1.12

zoomEnabled: boolean

Enables zoom on the web page with gestures.

Property

Android

Ios

Since

0.1

Methods

  • Call this when something has changed which has invalidated the layout of this view. This will schedule a layout pass of the view tree. It is useful to call this method when you want to change layout parameters on runtime. If this view layout invalidated, call applyLayout from the Page.layout in the iOS and from the view itself in the Android.

    Method

    applyLayout

    Android

    Ios

    Returns void

  • This method put a view to the top of other views in z-direction.

    Method

    bringToFront

    Android

    Ios

    Since

    0.1

    Returns void

  • This method flips the view horizontally.

    Method

    flipHorizontally

    Android

    Ios

    Since

    3.1.3

    Returns void

  • This method flips the view vertically.

    Method

    flipVertically

    Android

    Ios

    Since

    3.1.3

    Returns void

  • This method returns an object that defines view location on screen. Do not use this method for invisible views in UI.ListView ListView and UI.GridView GridView.

    Method

    getScreenLocation

    Returns

    location

    Returns

    location.x

    Returns

    location.y

    Android

    Ios

    Since

    3.2.0

    Returns Point2D

  • Gets the parent view of a view.

    Example

    import FlexLayout from '@smartface/native/ui/flexlayout';
    import Label from '@smartface/native/ui/label';

    var myFlexLayout = new FlexLayout();
    myFlexLayout.id = 5432;

    var myLabel = new Label({
    text: "Smartface Label"
    });
    myFlexLayout.addChild(myLabel);
    var parentId = myLabel.getParent().id; //is equal to 5432.

    Returns

    Parent view of a view, null if not exists.

    Method

    getParent

    Android

    Ios

    Since

    0.1

    Returns null | IViewGroup<"touch" | "touchCancelled" | "touchEnded" | "touchMoved" | "viewAdded" | "viewRemoved", any, MobileOSProps<ViewGroupIOSProps, ViewGroupAndroidProps>>

  • This method marks the view as needs relayout.

    Method

    dirty

    Android

    Ios

    Since

    4.3.6

    Returns void

  • Reloads the current page.

    Method

    refresh

    Android

    Ios

    Since

    0.1

    Returns void

  • Goes back to the previous web page.

    Method

    goBack

    Android

    Ios

    Since

    0.1

    Returns void

  • Goes back to the next web page if there is any.

    Method

    goForward

    Android

    Ios

    Since

    0.1

    Returns void

  • Loads the web page provided via the url.

    Method

    loadURL

    Android

    Ios

    Since

    0.1

    Parameters

    • url: string

    Returns void

  • Loads the web page provided via html code.

    Method

    loadHTML

    Android

    Ios

    Since

    0.1

    Parameters

    • html: string

    Returns void

  • Loads the web page provided via IO.File. You can load complete web page with this method by passing index.html as a file.

    Method

    loadFile

    Android

    Ios

    Since

    1.1.16

    Parameters

    • file: FileImpl

    Returns void

  • Runs a javascript code. Return value must be inside a function.

    Example

    import WebView from '@smartface/native/ui/webview'; import Flex from '@smartface/native/ui/flexlayout';

    var myScript = `
    function doSomething() {
    return "value";
    }
    doSomething();
    `;

    var myWebView = new WebView({
    left:10, top:10, right:10, bottom:10,
    positionType: Flex.PositionType.ABSOLUTE
    onShow: function(event) {
    myWebView.evaluateJS(myScript, function(value) {
    console.log("Result " + value);
    });
    }
    });
    page.layout.addChild(myWebView);
    myWebView.loadURL('https://www.google.com');

    Method

    evaluateJS

    Android

    Ios

    Since

    0.1

    Parameters

    • javascript: string
    • onReceive: ((value: string) => void)
        • (value: string): void
        • Parameters

          • value: string

          Returns void

    Returns void

  • Clears the resource cache.

    Method

    clearCache

    Android

    Ios

    Since

    2.0.7

    Parameters

    • deleteDiskFiles: boolean

    Returns void

  • Tells this WebView to clear its Cookie.

    Method

    clearCookie

    Android

    Ios

    Since

    2.0.7

    Returns void

  • This method clear all data from webview.

    Method

    clearAllData

    Android

    Ios

    Since

    2.0.7

    Returns void

  • Creates an event emitter instance to listen for the actions

    Returns

    Call the function to remove the event

    Parameters

    • eventName: "backButtonPressed"
    • callback: (() => void)

      Gets as any arguments as it needs

        • (): void
        • Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "changedURL"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "consoleMessage"
    • callback: ((params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }) => void)
        • (params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }): void
        • Parameters

          • params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }
            • sourceId: number
            • message: string
            • lineNumber: number
            • messageLevel: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "error"
    • callback: ((e: { url: string; code: number; message: string }) => void)
        • (e: { url: string; code: number; message: string }): void
        • Parameters

          • e: { url: string; code: number; message: string }
            • url: string
            • code: number
            • message: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "load"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "openNewWindow"
    • callback: ((e?: { url: string }) => void)
        • (e?: { url: string }): void
        • Parameters

          • Optional e: { url: string }
            • url: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "show"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "error" | "load" | "show" | "touch" | "touchCancelled" | "touchEnded" | "touchMoved" | "backButtonPressed" | "changedURL" | "consoleMessage" | "openNewWindow"
    • callback: ((...args: any[]) => void)
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Removes the specified event and invokes the callback after it is removed

    Parameters

    • eventName: "backButtonPressed"
    • callback: (() => void)
        • (): void
        • Returns void

    Returns void

  • Parameters

    • eventName: "changedURL"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "consoleMessage"
    • callback: ((params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }) => void)
        • (params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }): void
        • Parameters

          • params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }
            • sourceId: number
            • message: string
            • lineNumber: number
            • messageLevel: string

          Returns void

    Returns void

  • Parameters

    • eventName: "error"
    • callback: ((e: { url: string; code: number; message: string }) => void)
        • (e: { url: string; code: number; message: string }): void
        • Parameters

          • e: { url: string; code: number; message: string }
            • url: string
            • code: number
            • message: string

          Returns void

    Returns void

  • Parameters

    • eventName: "load"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "openNewWindow"
    • callback: ((e?: { url: string }) => void)
        • (e?: { url: string }): void
        • Parameters

          • Optional e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "show"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "error" | "load" | "show" | "touch" | "touchCancelled" | "touchEnded" | "touchMoved" | "backButtonPressed" | "changedURL" | "consoleMessage" | "openNewWindow"
    • callback: ((...args: any[]) => void)
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns void

  • Triggers the event manually.

    Parameters

    • eventName: "backButtonPressed"

    Returns void

  • Parameters

    • eventName: "changedURL"
    • e: { url: string }
      • url: string

    Returns void

  • Parameters

    • eventName: "consoleMessage"
    • params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }
      • sourceId: number
      • message: string
      • lineNumber: number
      • messageLevel: string

    Returns void

  • Parameters

    • eventName: "error"
    • e: { url: string; code: number; message: string }
      • url: string
      • code: number
      • message: string

    Returns void

  • Parameters

    • eventName: "load"
    • e: { url: string }
      • url: string

    Returns void

  • Parameters

    • eventName: "openNewWindow"
    • Optional e: { url: string }
      • url: string

    Returns void

  • Parameters

    • eventName: "show"
    • e: { url: string }
      • url: string

    Returns void

  • Parameters

    • eventName: "error" | "load" | "show" | "touch" | "touchCancelled" | "touchEnded" | "touchMoved" | "backButtonPressed" | "changedURL" | "consoleMessage" | "openNewWindow"
    • Rest ...args: any[]

    Returns void

  • Creates an event emitter instance to listen for the actions

    Returns

    Call the function to remove the event

    Parameters

    • eventName: "backButtonPressed"
    • callback: (() => void)

      Gets as any arguments as it needs

        • (): void
        • Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "changedURL"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "consoleMessage"
    • callback: ((params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }) => void)
        • (params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }): void
        • Parameters

          • params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }
            • sourceId: number
            • message: string
            • lineNumber: number
            • messageLevel: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "error"
    • callback: ((e: { url: string; code: number; message: string }) => void)
        • (e: { url: string; code: number; message: string }): void
        • Parameters

          • e: { url: string; code: number; message: string }
            • url: string
            • code: number
            • message: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "load"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "openNewWindow"
    • callback: ((e?: { url: string }) => void)
        • (e?: { url: string }): void
        • Parameters

          • Optional e: { url: string }
            • url: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "show"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • eventName: "error" | "load" | "show" | "touch" | "touchCancelled" | "touchEnded" | "touchMoved" | "backButtonPressed" | "changedURL" | "consoleMessage" | "openNewWindow"
    • callback: ((...args: any[]) => void)
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Adds the listener function to the beginning of the listeners array for the event named eventName. No checks are made to see if the listener has already been added. Multiple calls passing the same combination of eventName and listener will result in the listener being added, and called, multiple times.

    Parameters

    • eventName: "backButtonPressed"
    • callback: (() => void)
        • (): void
        • Returns void

    Returns void

  • Parameters

    • eventName: "changedURL"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "consoleMessage"
    • callback: ((params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }) => void)
        • (params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }): void
        • Parameters

          • params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }
            • sourceId: number
            • message: string
            • lineNumber: number
            • messageLevel: string

          Returns void

    Returns void

  • Parameters

    • eventName: "error"
    • callback: ((e: { url: string; code: number; message: string }) => void)
        • (e: { url: string; code: number; message: string }): void
        • Parameters

          • e: { url: string; code: number; message: string }
            • url: string
            • code: number
            • message: string

          Returns void

    Returns void

  • Parameters

    • eventName: "load"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "openNewWindow"
    • callback: ((e?: { url: string }) => void)
        • (e?: { url: string }): void
        • Parameters

          • Optional e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "show"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "error" | "load" | "show" | "touch" | "touchCancelled" | "touchEnded" | "touchMoved" | "backButtonPressed" | "changedURL" | "consoleMessage" | "openNewWindow"
    • callback: ((...args: any[]) => void)
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns void

  • Adds a one-time listener function for the event named eventName to the beginning of the listeners array. The next time eventName is triggered, this listener is removed, and then invoked.

    Parameters

    • eventName: "backButtonPressed"
    • callback: (() => void)
        • (): void
        • Returns void

    Returns void

  • Parameters

    • eventName: "changedURL"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "consoleMessage"
    • callback: ((params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }) => void)
        • (params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }): void
        • Parameters

          • params: { sourceId: number; message: string; lineNumber: number; messageLevel: string }
            • sourceId: number
            • message: string
            • lineNumber: number
            • messageLevel: string

          Returns void

    Returns void

  • Parameters

    • eventName: "error"
    • callback: ((e: { url: string; code: number; message: string }) => void)
        • (e: { url: string; code: number; message: string }): void
        • Parameters

          • e: { url: string; code: number; message: string }
            • url: string
            • code: number
            • message: string

          Returns void

    Returns void

  • Parameters

    • eventName: "load"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "openNewWindow"
    • callback: ((e?: { url: string }) => void)
        • (e?: { url: string }): void
        • Parameters

          • Optional e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "show"
    • callback: ((e: { url: string }) => void)
        • (e: { url: string }): void
        • Parameters

          • e: { url: string }
            • url: string

          Returns void

    Returns void

  • Parameters

    • eventName: "error" | "load" | "show" | "touch" | "touchCancelled" | "touchEnded" | "touchMoved" | "backButtonPressed" | "changedURL" | "consoleMessage" | "openNewWindow"
    • callback: ((...args: any[]) => void)
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns void

Events

onTouch: ((e?: Point2D) => boolean)

Type declaration

    • (e?: Point2D): boolean
    • This event is called when a touch screen motion event starts.

      onTouch

      Deprecated

      This method is deprecated in favor of EventEmitter. You could get more details for the deprecated events from here https://docs.smartface.io/smartface-native-framework/tips-and-tricks/handling-events

      Returns

      True if the listener has consumed the event, false otherwise.

      Android

      Ios

      Member

      UI.View

      Since

      0.1

      Example

      import View from '@smartface/native/ui/view';
      import FlexLayout from '@smartface/native/ui/flexlayout';
      import Button from '@smartface/native/ui/button';

      this.view1.on(View.Events.Touch, (point) => {
      console.info('view onTouch', point);
      });
      this.flexLayout1.on(FlexLayout.Events.Touch, (point) => {
      console.info('flexLayout onTouch', point);
      });
      this.button1.on(Button.Events.Touch, (point) => {
      console.info('button onTouch', point);
      });

      Parameters

      Returns boolean

onTouchEnded: ((isInside: boolean, point: Point2D) => boolean)

Type declaration

    • (isInside: boolean, point: Point2D): boolean
    • This event is called when a touch screen motion event ends. If touch position inside this view, isInside parameter will be true.

      onTouchEnded

      Deprecated

      This method is deprecated in favor of EventEmitter. You could get more details for the deprecated events from here https://docs.smartface.io/smartface-native-framework/tips-and-tricks/handling-events

      Returns

      True if the listener has consumed the event, false otherwise.

      Android

      Ios

      Member

      UI.View

      Since

      0.1

      Example

      import View from '@smartface/native/ui/view';
      import FlexLayout from '@smartface/native/ui/flexlayout';
      import Button from '@smartface/native/ui/button';

      this.view1.on(View.Events.TouchEnded, (isInside, point) => {
      console.info('view onTouchEnded', isInside, point);
      });
      this.flexLayout1.on(FlexLayout.Events.TouchEnded, (isInside, point) => {
      console.info('flexLayout onTouchEnded', isInside, point);
      });
      this.button1.on(Button.Events.TouchEnded, (isInside, point) => {
      console.info('button onTouchEnded', isInside, point);
      });

      Parameters

      • isInside: boolean

        This argument is deprecated. Use motionEvent's property.

      • point: Point2D

      Returns boolean

onTouchCancelled: ((point: Point2D) => boolean)

Type declaration

    • (point: Point2D): boolean
    • This event is called when a parent view takes control of the touch events, like a ListView or ScrollView does when scrolling.

      onTouchCancelled

      Deprecated

      This method is deprecated in favor of EventEmitter. You could get more details for the deprecated events from here https://docs.smartface.io/smartface-native-framework/tips-and-tricks/handling-events

      Returns

      True if the listener has consumed the event, false otherwise.

      Android

      Ios

      Member

      UI.View

      Since

      2.0.10

      Example

      import View from '@smartface/native/ui/view';
      import FlexLayout from '@smartface/native/ui/flexlayout';
      import Button from '@smartface/native/ui/button';

      this.view1.on(View.Events.TouchCancelled, (point) => {
      console.info('view onTouchCancelled', point);
      });
      this.flexLayout1.on(FlexLayout.Events.TouchCancelled, (point) => {
      console.info('flexLayout onTouchCancelled', point);
      });
      this.button1.on(Button.Events.TouchCancelled, (point) => {
      console.info('button onTouchCancelled', point);
      });

      Parameters

      Returns boolean

onChangedURL?: ((e: { url: string }) => boolean)

Type declaration

    • (e: { url: string }): boolean
    • Callback triggered when the url is changed. If it returns false, cannot navigate to the url.

      onChangedURL

      Returns

      Deprecated

      Android

      Ios

      Since

      0.1

      Example

      import WebView from '@smartface/native/ui/webview';

      const webView = new WebView();
      webView.on(WebView.Events.ChangedURL, (params) => {
      console.info('onChangedURL', params);
      });

      Parameters

      • e: { url: string }
        • url: string

      Returns boolean

onLoad?: ((e: { url: string }) => void)

Type declaration

    • (e: { url: string }): void
    • Callback triggered when the web page has started loading. In Android, This method is called once for each main frame load so a page with iframes or framesets will call onLoad one time for the main frame.

      onLoad

      Android

      Deprecated

      Ios

      Since

      0.1

      Example

      import WebView from '@smartface/native/ui/webview';

      const webView = new WebView();
      webView.on(WebView.Events.Load, (params) => {
      console.info('onLoad', params);
      });

      Parameters

      • e: { url: string }
        • url: string

      Returns void

onOpenNewWindow?: ((e: { url: string }) => void)

Type declaration

    • (e: { url: string }): void
    • Callback triggered when the target equals to _blank. That means open new window.

      Example

      myWebView.ios.onOpenNewWindow = function(event) {
      myWebView.loadURL(event.url);
      };

      @event onOpenNewWindow

      Deprecated

      Ios

      Since

      4.0.1

      Example

      import WebView from '@smartface/native/ui/webview';

      const webView = new WebView();
      webView.on(WebView.Events.OpenNewWindow, (params) => {
      console.info('onOpenNewWindow', params);
      });

      Parameters

      • e: { url: string }
        • url: string

      Returns void

onError?: ((e: { url: string; code: number; message: string }) => void)

Type declaration

    • (e: { url: string; code: number; message: string }): void
    • Callback triggered when an error occured while loading a web page.

      onError

      Deprecated

      Android

      Ios

      Since

      0.1

      Example

      import WebView from '@smartface/native/ui/webview';

      const webView = new WebView();
      webView.on(WebView.Events.Error, (params) => {
      console.info('onError', params);
      });

      Parameters

      • e: { url: string; code: number; message: string }
        • url: string
        • code: number
        • message: string

      Returns void

onShow?: ((e: { url: string }) => void)

Type declaration

    • (e: { url: string }): void
    • Callback triggered when a web page has finished loading. In Android, this method is called only for main frame. Receiving an onShow callback does not guarantee that the next frame drawn by WebView will reflect the state of the DOM at this point.

      onShow

      Deprecated

      Android

      Ios

      Since

      0.1

      Example

      import WebView from '@smartface/native/ui/webview';

      const webView = new WebView();
      webView.on(WebView.Events.Show, (params) => {
      console.info('onShow', params);
      });

      Parameters

      • e: { url: string }
        • url: string

      Returns void

Generated using TypeDoc