zoukankan      html  css  js  c++  java
  • Kendo UI开发教程(27): 移动应用开发简介

    Kendo UI 支持开发Web应用,前面介绍的SPA,也支持开发移动应用,至于使用 HTML5 + JavaScript + CSS开发移动是不是一个好的选择不在本文的讨论之中。Kendo UI Mobile提供了一种快速开发跨手机平台的方法(Kendo UI可以使得这种Web应用在界面上看起来和本地应用非常类似)。如果你的移动应用需要数据的支持,了解一些JSON方面计的知识也是必须的。
    借助于PhoneGap 等工具可以HTML5打包成移动平台的本地应用,并支持使用JavaScript访问一些平台相关的功能,如GPS,Camera等功能,有兴趣的可以参考相关文档。

    下面三点为构成Kendo 移动应用的几个组成部分:

    1. Application: Kendo 移动应用的主应用类,用来管理应用部分部分之间切换,应用页面历史,加载View以及其它一些重要的移动应用相关的任务。
    2. Layout: 定义移动应用UI的布局,类似于Web应用的MasterPage,主要可以用来定义不同View之间一些公用的部分,比如菜单。
    3. Views: 移动应用的每个页面,每个应用包含一个或多个页面。

    Layouts 和 View 使用HTML来定义,而Application 为JavaScript。 下面的步骤给出了编写Kendo UI移动应用的基本步骤。

    第一步: 创建HTML页面

    Kendo UI移动应用可以使用简单的HTML页面来创建,这里我们创建一个简单的index.html 如下:

    1 <!DOCTYPE html>
    2 <html>
    3 <head>
    4     <title>My App</title>
    5     <!--TODO: Add CSS links-->
    6 </head>
    7 <body>
    8  
    9     <!--TODO: Add JavaScript referneces-->
    10 </body>
    11 </html>

    第二步:添加Kendo UI Mobile的引用

    添加Kendu UI Mobile CSS和Javascript的引用。

    1 <!DOCTYPE html>
    2 <html>
    3 <head>
    4     <title>My App</title>
    5  
    6     <link href="css/kendo.mobile.all.min.css" rel="stylesheet" />
    7 </head>
    8 <body>
    9  
    10     <script src="js/jquery.min.js"></script>
    11     <script src="js/kendo.all.min.js"></script>
    12 </body>
    13 </html>

    第三步:定义应用布局文件

    Layout为应用UI的模板,应用所有的View的内容都使用模板来显示,一个Layout可以包含任意的内容,通常它包含有标题头和任务栏。比如下面的Layout:

    1 <!DOCTYPE html>
    2 <html>
    3 <head>
    4     <title>My App</title>
    5  
    6     <link href="css/kendo.mobile.all.min.css" rel="stylesheet" />
    7 </head>
    8 <body>
    9     <section data-role="layout" data-id="default">
    10         <header data-role="header">
    11             <div data-role="navbar">My App</div>
    12         </header>
    13         <!--View content will render here-->
    14         <footer data-role="footer">
    15             <div data-role="tabstrip">
    16                 <a href="#home">Home</a>       
    17             </div>
    18         </footer>
    19     </section>
    20  
    21     <script src="js/jquery.min.js"></script>
    22     <script src="js/kendo.all.min.js"></script>
    23 </body>
    24 </html>

    代码中使用data-role属性,这个属性用来建立HTML和Kendo UImobile 库之间的联系。因此

    1 <section data-role="layout" data-id="default">

    在应用初始化时,这部分定义将转换为Layout定义。 data-id为该Layout的id,后面定义的view 可以通过这个id来引用某个layout.
    最后,为完整起见,这段代码还使用了NavBar和TabStrip两个用在移动应用中的UI组件。

    第四步:构造View

    创建好Layout之后,应用至少要创建一个View用来显示,大部分应用包含有多个View,这里我们创建一个简单的View如下:

    1 <!DOCTYPE html>
    2 <html>
    3 <head>
    4     <title>My App</title>
    5  
    6     <link href="css/kendo.mobile.all.min.css" rel="stylesheet" />
    7 </head>
    8 <body>
    9     <div id="home" data-role="view" data-layout="default">
    10         Hello Mobile World!
    11     </div>
    12  
    13     <section data-role="layout" data-id="default">
    14         <header data-role="header">
    15             <div data-role="navbar">My App</div>
    16         </header>
    17         <!--View content will render here-->
    18         <footer data-role="footer">
    19             <div data-role="tabstrip">
    20                 <a href="#home">Home</a>       
    21             </div>
    22         </footer>
    23     </section>
    24  
    25     <script src="js/jquery.min.js"></script>
    26     <script src="js/kendo.all.min.js"></script>
    27 </body>
    28 </html>

    View定义使用data-role属性“view”, data-layout定义使用那个layout.

    第五步:初始化移动应用

    前面定义了一些HTML元素,还没有使用任何JavaScript,使用下面一行代码,可以使得前面定义的HTML变得和本地应用类似:

    1 <script>
    2     var app = new kendo.mobile.Application();
    3 </script>

    20130825007

    这样一个简单的移动应用就出现了,Kendo UI缺省情况下使用iOS 界面(如上图),在手机上运行会根据手机平台的不同选择合适的界面风格,你也可以通过指定平台类型,比如:

    1 <script>
    2     var app = new kendo.mobile.Application(document.body,
    3     {
    4         platform:'android'
    5     });
    6 </script>

    来测试你的应用在不同平台上显示,也可以根据平台的不同,对应用做些调整,比如:

    1 <div data-role="layout" data-id="foo" data-platform="ios">
    2     <div data-role="header">iOS App</div>
    3 </div>
    4  
    5 <div data-role="layout" data-id="foo" data-platform="android">
    6     <div data-role="header">Android App</div>
    7 </div>

    注意的是data-platform属性目前只支持在layout中使用。

  • 相关阅读:
    牛客网 二叉树的镜像 JAVA
    牛客网 反转链表 JAVA
    牛客网 调整数组顺序使奇数位于偶数前面 JAVA
    Integer to Roman LeetCode Java
    Valid Number leetcode java
    Longest Common Prefix
    Wildcard Matching leetcode java
    Regular Expression Matching
    Longest Palindromic Substring
    Add Binary LeetCode Java
  • 原文地址:https://www.cnblogs.com/pangblog/p/3313143.html
Copyright © 2011-2022 走看看