V-Play Apps Components Reference

Every V-Play app begins with a single App component defined as the root of the QML tree. Every app then usually includes a navigation item and some Page items.

For a short introduction on how to use V-Play Apps components please refer to our Getting Started guide.

V-Play Plugins for Apps (and Games)

V-Play Plugins add platform-specific features and 3rd party SDK integration available from QML.

AdMob Plugin

Integrate with AdMob to monetize and promote your apps & games with ads.

Chartboost Plugin

Integrate with Chartboost to monetize and cross-promote your games with ads.

Facebook Plugin

Integrate with Facebook to help you build engaging social apps and get more installs.

Flurry Plugin

Integrate with Flurry to get insights into your app's usage.

GameCenter Plugin

Integrate with GameCenter to send your games' highscores from V-Play Game Network to Apple Game Center on iOS devices.

Google Analytics Plugin

Integrate with Google Analytics to measure user interactions for your mobile and desktop apps.

GoogleCloudMessaging Plugin

Integrate with Google Cloud Messaging Push to send cross-platform push notifications and increase your users' engagement.

HockeyApp Plugin

Integrate with HockeyApp for beta distribution & crash reports.

Infinario Plugin

Integrate with Infinario to use game analytics for game designers to improve your game.

Notification Plugin

Schedule native local push notifications in your app.

OneSignal Plugin

Integrate with OneSignal Push to send cross-platform push notifications and increase your users' engagement.

Parse Plugin

Integrate with Parse Push to send cross-platform push notifications and increase your users' engagement.

Soomla Plugin

Integrate with Soomla to offer in-app purchases and a virtual economy model within your app.

Note: For testing the plugins on mobile and source code examples, see the V-Play Plugin Demo. When you develop your own app and want to add plugins to it, a V-Play license is required.

App Essentials

App

Top-level component of a V-Play application containing all other components

AppFlickable

A Flickable with a preset rebound animation for a native scrolling experience

ListPage

A Page item with an AppListView as a single child

Page

A single page within an application

App Controls

AppActivityIndicator

An intermediate spinning progress indicator

AppButton

A button with a default raised and flat button style

AppCheckBox

A checkbox with a platform-specific styling for iOS and Android

AppImage

An image with a default source

AppListView

A ListView providing a native ScrollIndicator, an empty view and swipe gestures for its list delegates

AppMap

Displays a map view with the current user position

AppSwitch

An on/off button-like control

AppTabBar

A tab bar with Theme-based iOS and Android styles

AppTabButton

A tab button to be used with AppTabBar for Theme-based iOS and Android styled tabs

AppText

A styled text control

AppTextEdit

A multi-line TextEdit with a given placeholder text

AppTextField

A single-line TextField input control

AppTextInput

A single-line TextInput with a given placeholder text (deprecated)

Dialog

A dialog with custom content and one or two buttons

FloatingActionButton

A material-design styled floating action button

Icon

An item for displaying icons from an icon font

IconButton

A button with an icon as visual representation

InputDialog

Global object for displaying standard user interaction dialogs

NativeDialog

Global object for invoking native system dialogs

PageControl

Displays page indicators and allows switching to the previous or next page

PictureViewer

A modal, full-screen picture viewer component

PullToRefreshHandler

A helper adding a pull-to-refresh control to an AppListView

RoundedImage

An image item with rounded corners and an optional border

SearchBar

A search bar with native styling for iOS and Android based on the Theme settings

SectionSelect

A control that allows to jump to specific sections of a ListView

SimpleRow

A ListView delegate item with two labels and an optional image

SimpleSection

A ListView delegate item for displaying sections in a list view

SwipeButton

A button with a default style to be used together with SwipeOptionsContainer

SwipeOptionsContainer

A ListView delegate container to implement swipeable rows within a ListView

VisibilityRefreshHandler

A helper item for handling data reload actions as soon as the item becomes visible

App Navigation

ActivityIndicatorBarItem

Displays an AppActivityIndicator inside a NavigationBar slot

AppDrawer

A drawer opened from the left or right edge of the screen with custom content

ButtonBarItem

Base type for NavigationBar items which can be clicked

IconButtonBarItem

Displays a clickable Icon inside a NavigationBar slot

Navigation

A navigation control for using platform-specific navigation modes

NavigationBar

A navigation control for displaying a header, back navigation and optional items

NavigationBarItem

Base type for items to be placed in the left or right slots of NavigationBar

NavigationBarRow

Container item to display multiple NavigationBarItems within a NavigationBar

NavigationItem

Base type for items inside Navigation

NavigationStack

Provides a stack of Pages with navigation

TabControl

A tabbed navigation control

TextButtonBarItem

Displays a clickable text inside a NavigationBar slot

App Styling

IconType

A global object containing the possible Icons

RippleMouseArea

A mouse area that automatically adds a ripple effect on android devices

StyleSimpleRow

A default style for the SimpleRow type that is uses the Theme::listItem configuration

StyleSimpleSection

A default style for the SimpleSection type that uses the Theme::listSection and Theme::listSectionCompact configuration

Theme

A global object for defining app-wide styling attributes

ThemeAppButton

Defines style of AppButton items

ThemeAppCheckBox

Defines the style of AppCheckBox items

ThemeColors

Defines app-wide color theming

ThemeNavigationAppDrawer

Defines style of the Navigation's AppDrawer

ThemeNavigationBar

Defines style of the NavigationBar

ThemeSimpleRow

Defines the default appearance of SimpleRow list items

ThemeSimpleSection

Defines the default appearance of list sections based on the SimpleSection type

ThemeSimpleSectionCompact

Defines the default appearance of list sections based on the SimpleSection type if SimpleSection::compactStyle is used

ThemeTabControl

Defines style of the TabControl

App Utility

DateFormatter

Convenience methods for formatting date and time

Storage

Storage item provides a persistent and offline storage for arbitrary key-value pair data

WebStorage

Item syncs key-value-data with the cloud across devices and platforms with the VPlayGameNetwork

Context Components

The Context Components are global properties that are available in all QML files. They can be used to open native dialogs and browsers, network requests, dynamic QML component creation and provide system information.

NativeUtils

NativeUtils context property allows opening native message boxes, input dialogs and browsers

Qt Context Objects

The Qt Context Objects page contains information about often-used functionality of the Qt element, for network requests and useful JavaScript elements.

V-Play & Qt Multimedia Components

These components allow to play audio and video files.

AlphaVideo

Component allows you to show videos with transparency

BackgroundMusic

Element allows playing long-lasting and looping background sound in wav, mp3 or ogg file format

SoundEffectVPlay

Element allows playing short-lasting and looping sound effects in wav file format

In addition to the above list, also these Qt Quick Components are useful:

Audio Add audio playback to a scene
SoundEffect Provides a way to play sound effects in QML
MediaPlayer Add media playback to a scene
Video A convenience type for showing a specified video
VideoOutput Render video or camera viewfinder
Camera Access viewfinder frames, and take photos and movies
Radio Access radio functionality from a QML application
Torch Simple control over torch functionality
QtMultimedia Provides a global object with useful functions from Qt Multimedia

Networking Components

These components handle network activities.

XMLHttpRequest Element

The XMLHttpRequest object can be used to asynchronously obtain data from over a network.

V-Play Gamification Components

V-Play Game Network components for using gamification elements like leaderboards, achievements and chat in your app.

Achievement

Reward your players with achievements for reaching certain goals in your game and to give them more incentive to keep playing your game

GameNetworkUser

Represents a single user instance on V-Play Game Network

VPlayGameNetwork

Root V-Play Game Network component for using leaderboards, achievements and challenges in your game

VPlayGameNetworkView

Default UI for VPlayGameNetwork leaderboards, achievements and player profile

For using chat, Facebook connection and user profiles see the VPlayMultiplayerView component.

Most useful QML Components

Item The Item is the most basic of all visual items in QML.
Animation The Animation element is the base of all QML animations lasting for a fixed time.
Timer The Timer item triggers a handler at a specified interval.
Loader The Loader item allows dynamically loading an Item-based subtree from a URL or Component.

See here for a full list of all QML components. There is also a list of all QML APIs by module including modules like connectivity (via Bluetooth, NFC or WebSockets), sensors, location or webview.

Voted #1 for:

  • Easiest to learn
  • Most time saving
  • Best support

Develop Cross-Platform Apps and Games 50% Faster!

  • Voted the best supported, most time-saving and easiest to learn cross-platform development tool
  • Based on the Qt framework, with native performance and appearance on all platforms including iOS and Android
  • Offers a variety of plugins to monetize, analyze and engage users
FREE!
create apps
create games
cross platform
native performance
3rd party services
game network
multiplayer
level editor
easiest to learn
biggest time saving
best support