Upgrade Vue 2 To 3
Vue features a range of various screens, allowing you to customise your movie experience. Vue has over 850 screens throughout its sites, including 3D screens, extreme screens, gold class screens, scene screens and bars, and the renowned IMAX theatre screen.
All of Vue's films are displayed in stunning 4K Sony Digital Cinema, providing patrons with ultra high definition images and excellent Dolby ATMOS surround sound. It's almost as good as being inside the movie, with highly vivid colours and floor-shaking sound quality!While constantly playing the most anticipated blockbusters of the time, Vue also shows a wide range of other films and movies to appeal to almost everyone.
If you don't enjoy high-action, fast-paced action films like Fast and Furious 9 or goofy dramas like Peter Rabbit 2, Vue also offers ballet, national theatre, operas, musicals, and live streaming events like eGaming championships.
Vue takes pride in providing a diverse selection of films in their theatres.Vue is focused about giving you that big-screen experience.
Their cutting-edge theatres feature a slew of quality and amazing technologies to improve your viewing experience.
Cut costs on the cinema experience with a Vue promo code
The basic stepped seating at Vue is intended to bring you closer to the action on screen. Their stadium-style seating ensures that you never miss a second of the action. If you're feeling fancy, you may upgrade to a reclining seat, which allows for complete attention and relaxation by kicking back and selecting the ideal viewing angle.
Yes, your seat can be reclined all the way back. Want to take it a step further? Upgrade to a VIP seat for the ultimate in Vue luxury and enjoy.
Do you want to have the best Vue experience possible?
Enter another world with Vue
Navigate to the Vue website and begin exploring popular blockbuster films and more! But don't forget to use an Express Discounts discount code to save even more money.
You want the greatest experience possible, so utilising one of our unique, valid Vue cinema promo codes will ensure that you have the BEST time possible.
Laugh, scream, weep - feel every sensation inside a Vue cinema, and make it even better with an Express Discounts discount code!
The bottom of the page is your best friend providing real-time error reports and device logs.
Drag and drop to code
Just click a component from the Components panel and drag it to the code editor, somewhere inside the block in
components
>HelloWorld.vue
. Releasing the mouse button inserts some pre-written sample code for the respective component. Any methods that go with it (such as what happens on button or item tap) are automatically added right below in the block.
TIP: Use the search of the Components panel to quickly find the element that you want to use. The search works only with the title of the component and not the actual name used in the code. For example: the search finds text field but does not find textfield.
For most UI components to work, you need to drop them inside the
block, preferably inside a layout component. Layouts tell your app how to position the UI components on the screen.
NOTE: Right now, there's nothing stopping you from dropping the code at a place that will cause your app to crash or simply not load. In those cases, check the Errors and Device Logs tabs for more information.
Check it out real-time
After you place the code in a valid spot, hit Preview (or Ctrl+S
or Cmd+S
) and see your app refresh on your device screen in an instant.
In some cases, when you interact with the app, it will close unexpectedly. Just fire it up again and inspect the crash report.
If at any point you stop seeing your changes applied on the device, click QR code and re-scan the QR code with the Playground app.
Configure your code
So, the component runs and shows on your screen. You're excited but you want to make it your own. Hack away at the default code suggested by the Playground. Fix sizes and labels, remove or add elements.
Scroll down to the block and switch up the styling a bit. Experiment with colors and font sizes.
If you want to explore the NativeScript Playground, you can start by creating a simple to-do app with the following requirements:
Basic design
- Two-tab layout
- One tab shows active tasks and lets you add new tasks
- Second tab lists completed tasks
Basic functionality
- Add tasks: Users can add tasks as text
- View tasks: Newly added tasks are listed as active and can be tapped
- Complete tasks: Tapping an active task shows an action dialog with options
- Delete tasks: Tapping an active or completed task shows an action dialog with options
Advanced design
- Input and button for adding tasks are styled
- Tabs are styled
- Active tasks are styled
- Completed tasks are styled
TIP: All sections of this tutorial contain a Some NativeScript basics and Requirement implementation sub-sections. You can skip the basics sub-section and jump straight to the implementation for a more hands-on approach.
The bare Vue.js template
All development for this tutorial happens in components
>HelloWorld.vue
, containing the front end, the code-behind logic, and most of the styles.
HelloWorld.vue
begins with a simple block consisting of several labels and no connected code-behind logic. As you drag and drop user interface components to the app, the Playground populates the
block.
You'll be working in the block to design the user interface or in the
block to build the app functionality. The
block requires NativeScript-compatible XML. The
block accepts both Vue.js and NativeScript JavaScript code.
Basic design
Section progress
Here's how your app will look at the start and at the end of this section.
Initial screen | Tab 1 | Tab 2 |
---|
Some NativeScript basics
The
element is the top-level user interface element of every NativeScript-Vue app. All other user interface elements are nested within.
The
element shows an action bar for the
. A
cannot contain more than one
.
Typically, after the
, you will have navigation components (such as a drawer or a tab view) or layout components. These elements control the layout of your app and let you determine how to place other user interface elements inside.
Requirement implementation
Use the
component to create a two-tab app.
- Change the title of the
to reflect the app purpose. - Remove the default
block and all its contents that come with the template.
components are top-level layout containers for scrollable content. - Drag and drop the
component in its place.
The Playground applies some code formatting, including taking care of indentation. However, the formatting is applied after the insertion and using the browser's undo feature only reverts the formatting and not the insertion of code. - Configure the height of the
to fill the screen (set it to 100%).
For Android devices, consider adding theandroidTabsPosition
property and setting it tobottom
. Otherwise, the tabs will appear at the top of the screen. - Change the titles of the
elements and their contents to reflect their purpose.
At this point, text content for the tabs is shown incomponents with no styling and formatting. Apply the
textWrap="true"
property to the respectivecomponents to improve the visualization of the text.
At the end of this stage, your
should resemble this sample:
Basic functionality: Add tasks
Section progress
Here's how your app will look at the start and at the end of this section.
Initial screen | Tab 1 - No tasks | Tab 1 - Added tasks |
---|
Some NativeScript basics
The layout components let you arrange the various UI widgets of your app. Whenever you need to place more than one UI widget on your app screen, you are likely to use one of the available layout options. The
and the
are basic but versatile options, letting you position elements vertically or in a table-like layout, respectively. While the
displays elements in their natural sequence, the
lets you choose the exact positions of your elements in the grid.
Requirement implementation
Use a
to arrange a
and a on the page. The latter two form the input functionality of the app.
Use a
to show tasks below the input field.
- Delete the
component from the first
block for the first tab. - Drag and drop a
component within the
block for the first tab.
The default code creates a colorful vertical stack. - Delete all
components from the
block. - Drag and drop a
component within the
block for the first tab.
The default code creates a colorful table that shows how to position elements and merge grid cells. - Delete all
components from the
block. Configure the
.- Remove background color.
- Set width and height both to
100%
.
Configure the
.- Set the grid to consist of two columns and one row, with the width of the first column set to twice that of the second.
- Set the width of the grid to 100% so that it takes the entire width of the screen.
- Set the height of the grid to 25%. Otherwise, the
you'll be adding later might overlap the
. - Remove any additional settings for the grid.
- Drag and drop a
and awithin the
block.
The Playground adds JavaScript code to your code for the first time. Note thedata()
andmethods
blocks added in theblock below. In next implementation steps, you will need to add code to these sections to create some of the app functionality.
- Drag and drop a
below the grid.
The default code creates a list of countries and country flag icons within a
. Configure the positioning of the elements within the grid.
- Set the
to inhabit the first column and the first row. - Set the
to inhabit the second column and the first row.
- Set the
Configure the
.- Make the text field editable.
- Enable adding tasks using
Return
from the keyboard.
Clean up and configure the
.- Remove all its nested blocks except for the
.
- Set its height to 75%. Otherwise, the
might overlap the
. - Replace the
countries
-related binding with a binding to your array of active tasks. - In the
block, remove the array of countries and create an empty array for your active tasks.
- Remove all its nested blocks except for the
In the
block, tie some logic to the tapping of the button.- Check if the input is an empty string.
- Log newly added tasks in the console.
- Add newly added tasks into the array of active tasks. Use
unshift
to place new items at the top of the page. - Clear the text field after input.
- Use the
in the
to list the newly added task on the screen.
At the end of this stage, your
should resemble this sample:
Basic functionality: View, complete, and delete tasks from the To Do tab
Section progress
Here's how your app will look at the start and at the end of this section.
Tab 1 - Added tasks | Tab 1 - Item tapped | Tab 2 - Completed tasks |
---|
Some NativeScript basics
Out-of-the-box, the
component detects a tap gesture for every item and emits an event for it. The event carries information about the index of the tapped array item and the array item itself. To let the user choose the outcome of a tap gesture and expand the functionality of your app, you can tie a dialog to the event.
dialogs
is a globally available module that provides several configurable dialog types for apps: alert, action, prompt, login, confirmation. This implementation relies on action()
to let the user choose if they want to mark a task as completed or delete it from the list of active tasks.
Requirement implementation
In the second
block, remove theelement. Drag and drop a
element, clean up its contents and set a height for it.In the newly added
element show items from an array of completed tasks (dones
).Modify the
onItemTap
method.
Method shows an
action()
dialog.Method logs user selection in the console for debugging.
Based on user selection, the method moves elements from the
todos
array to thedones
array, deletes elements from thetodos
array, or dismisses the dialog. Usesplice()
to avoid leaving holes in the array andunshift()
to make sure that recently completed tasks are shown on top.
At the end of this stage, your
should resemble this sample:
Basic functionality: View, return to active tasks, and delete tasks from the Completed tab
Section progress
Here's how your app will look at the start and at the end of this section.
Tab 2 - Completed tasks | Tab 2 - Item tapped | Tab 1 - Active tasks |
---|
Some NativeScript basics
This implementation step does not require any additional knowledge.
Requirement implementation
For the second tab, create and modify the onDoneTap
method:
Method shows an
action()
dialog.Method logs user selection in the console for debugging.
Based on user selection, the method moves elements from the
dones
array to thetodos
array, deletes elements from thedones
array, or dismisses the dialog. Usesplice()
to avoid leaving holes in the array andunshift()
to make sure that recently completed tasks are shown on top.
At the end of this stage, your
should resemble this sample:
Advanced design: Styled input field and button
Section progress
Here's how your app will look at the start and at the end of this section.
Tab 1 - No style | Tab 1 - Styled | Tab 1 - Styled |
---|
Some NativeScript basics
When you work with NativeScript and Vue.js, you can use application-wide CSS, scoped CSS, or inline CSS to style your app. Application-wide CSS is applied first and is handled in app.css
in the root of your project. This tutorial does not explore application-wide CSS. See also: Styling.
Scoped CSS is applied to the current component only and is handled in HelloWorld.vue
in the block. This tutorial relies almost exclusively on scoped CSS and inline CSS. See also: Scoped CSS.
With type selectors, you can select a UI component and apply styling to it. To select a type, use the component name as provided in the code. For example, to select the tab view, use TabView
.
Requirement implementation
Style the input field
In HelloWorld.vue
>, change the font size, the color, and the margins around the
.
Style the button
In the block, create a style for the button. Modify the style to create a colorful button with rounded corners.
Advanced design: Styled tab navigation
Section progress
Here's how your app will look at the start and at the end of this section.
Tabs - No style | Tabs Styled |
---|
Some NativeScript basics
provides some styling properties out of the box. You can apply a text transform to each tab title (textTransform
) and change the font size and color globally (tabTextFontSize
, tabTextColor
, selectedTabTextColor
). You can also change the background color of your tabs (tabBackgroundColor
).
Requirement implementation
Change color and font size of selected tab title
In HelloWorld.vue
, add the selectedTabTextColor
and tabTextFontSize
property to the
.
Transform text
Apply the textTransform
property to the separate tabs. You can use this property only on the
level.
Advanced design: Styled active tasks
Here's how your app will look at the start and at the end of this section.
Active tasks - No style | Active tasks - no separator | Active tasks - styled active tasks |
---|
Some NativeScript basics
and have out-of-the-box style properties that you can use to control elements such as the list separator or the text wrap within the
block. To change the font style, color, and positioning of text, you need to use CSS in the
block.
To implement a style particularly for the text of active tasks, you can set an id
for the element.
Requirement implementation
Set an
id
for thethat represents active tasks and enable text wrapping. Enabling text wrapping ensures that longer text shows properly in your list
Add the
separatorColor
property and set it totransparent
for the
that shows active tasks. This way, the separator will no longer appear in your list.In
, create the style for active tasks. Set font size, color, and some padding to position the text on the page. Play with margins and paddings until you get a result that works for you.
Advanced design: Styled completed tasks
Here's how your app will look at the start and at the end of this section.
Completed tasks - No style | Completed tasks - Styled |
---|
Some NativeScript basics
This section applies the basic NativeScript knowledge from Advanced design: Styled active tasks.
Requirement implementation
Set an
id
for thethat represents completed tasks and enable text wrapping. Enabling text wrapping ensures that longer text shows properly in your list
Add the
separatorColor
property, and set it totransparent
for the
that represents completed tasks. This way, the separator will no longer appear in your list.In
, create the style for completed tasks. Set font size, color, text decoration, and some padding to position the text on the page. Play with margins and paddings until you get a result that works for you.