成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Sencha Touch開發實例:記事本應用(一)

移動開發 移動應用
在本文中,將介紹目前一個著名的移動跨平臺開發框架Sencha Touch, 該框架是世界上第一個基于HTML 5的Mobile App框架,Sencha的前身其實大名鼎鼎的AJAX框架EXT JS,Sencha Touch目前是其下面的一個子框架項目,可以讓你的Web App看起來像Native App。美麗的用戶界面組件和豐富的數據管理,全部基于最新的HTML 5和CSS3的 WEB標準,全面兼容Android和Apple iOS設備。

目前,移動應用開發如火如荼,比如Android、iOS開發的應用已越來越多。開發者在開發這些基于不同操作平臺上的無線應用時,都面臨要熟悉所用平臺的技術知識的挑戰。因此,目前有不少基于HTML 5標準的跨移動開發框架出現,開發者只需要掌握HTML 5,CSS及Javascript及相關框架的開發技巧就可以了。

在Sencha Touch的項目下載地址里,我們可以下載其中的***版本。本系列教程將分四篇,將講解如何使用Sencha Touch設計一個記事本小應用,用戶可以在上面簡單記錄便條筆記,并將其保存在移動設備中。

Sencha Touch開發實例

應用示意圖

系統的主要功能有

1) 新建記事內容

2) 編輯記事內容

3) 刪除記事內容

4) 在移動設備應用中保存記事的內容。

本系列的教程,希望讀者具有一定的EXT JS框架的開發基礎知識為佳。在***講中,先講解如何對應用進行框架的設計。

設計主頁面

首先,我們先來看如何設計用戶用于創建和編輯記事的表單,可以大概設計成如下的樣子:

Sencha Touch開發實例

可以看到,這個頁面中,有保存按鈕,以及一個刪除按鈕(一個垃圾圖標),對應到Sencha Touch框架中的元素如下圖所示:

Sencha Touch開發實例

接下來是記事列表的界面,框圖如下:

Sencha Touch開發實例

其對應Sencha Touch中的框架元素如下:

Sencha Touch開發實例

此外,還需要使用一個布局文件,它是溝通記事列表頁面和記事頁面登記的橋梁,這里我們使用EXT的card layout布局進行布局,兩個界面的關系如下圖:

Sencha Touch開發實例#p#

構建程序基本結構

首先,在程序中的結構如下圖所示,其中有三個主要的文件:index.html,app.js和app.cs。

在index.html中,主要功能是啟動整個應用程序并且引用相關的類庫,如下代碼:

  1. <script class="hiddenSpellError"></script> 
  2. <script src=”senchatouch/1.1.0/sencha-touch.css" rel="stylesheet" type="text/css" /> 
  3. <link href="app.css" rel="stylesheet" type="text/css" /> 
  4. <script src="app.js" type="text/javascript"></script> 

這里,首先引入了sencha touch本身的類庫JS代碼,然后再引入app.css和app.js兩個文件,其中app.css為樣式文件,app.js文件為程序的核心功能JS文件。

下面我們介紹app.js中的具體代碼,首先是在app.js中進行初始化:

  1. var App = new Ext.Application({ 
  2.     name : 'NotesApp'
  3.     useLoadMask : true
  4.     launch : function () { 
  5.  
  6.     } 
  7. }) 

其中,Ext.Application的實例的初始化,意味者一個sencha touch應用的建立,具體的可以參考(http://dev.sencha.com/deploy/touch/docs/?class=Ext.Application)中對該類的說明,這個類的實例化后,會自動創建一個全局的變量NotesApp,并且同時建立了如下的命名空間:

◆NotesApp

◆NotesApp.views、

◆NotesApp.controllers

◆NotesApp.models

◆NotesApp.stores

而launch的方法只會運行一次,在這里可以創建應用程序的viewport界面視圖,代碼如下:

  1. launch: function () { 
  2.  
  3.     NotesApp.views.viewport = new Ext.Panel({ 
  4.         fullscreen: true
  5.         html:'This is the viewport' 
  6.     }); 

我們將整個界面布局設置為使用Panel面板,并且設置了fullscreen屬性為true,同時也會設置monitorOrientation屬性的值為true,這個是很有用的一個屬性,因為它可以讓panel面板監聽屏幕方向發生變化時候的事件。當我們運行后,顯示如下的界面:

Sencha Touch開發實例#p#

創建記事列表界面

當我們的這個應用一啟動后,首先顯示的是記事列表頁面,其中頁面結構如下圖:

Sencha Touch開發實例

可以看到,是在一個pannel面版中,存在一個list列表控件和一個toolbar工具條列表。下面是pannel的代碼:

  1. NotesApp.views.notesListContainer = new Ext.Panel({ 
  2.     id : 'notesListContainer'
  3.     layout : 'fit'
  4.     html: 'This is the notes list container' 
  5. }); 

此時,我們結合之前的代碼,看下目前的代碼應該是如下的樣子:

  1. var App = new Ext.Application({ 
  2.     name: 'NotesApp'
  3.     useLoadMask: true
  4.     launch: function () { 
  5.  
  6.         NotesApp.views.notesListContainer = new Ext.Panel({ 
  7.             id : 'notesListContainer'
  8.             layout : 'fit'
  9.             html: 'This is the notes list container' 
  10.         }); 
  11.  
  12.         NotesApp.views.viewport = new Ext.Panel({ 
  13.             fullscreen : true
  14.             layout : 'card'
  15.             cardAnimation : 'slide'
  16.             items: [NotesApp.views.notesListContainer] 
  17.         }); 
  18.     } 
  19. }) 

可以看到,在viewport中的items屬性,我們將新的這個panel加入進去了。

并且請注意cardAnimation中,說明了面板的使用效果是slide的動畫展現效果。在模擬器中運行后,會看到如下圖的效果:

Sencha Touch開發實例

接下來,我們再為其增加工具條,代碼如下:

  1. NotesApp.views.notesListToolbar = new Ext.Toolbar({ 
  2.  
  3.   id: 'notesListToolbar'
  4.  
  5.   title: 'My Notes' 
  6.  
  7.   }); 

將工具條粘附到記事列表的面板中是很簡單的,只需要dockedItems 屬性即可:

  1. NotesApp.views.notesListContainer = new Ext.Panel({ 
  2.  
  3.   id: 'notesListContainer'
  4.  
  5.   layout: 'fit'
  6.  
  7.   html: 'This is the notes list container'
  8.  
  9.   dockedItems: [NotesApp.views.notesListToolbar] 
  10.  
  11.   }); 

下圖就是添加工具條后的運行效果:

Sencha Touch開發實例

到目前為止,本講的內容結束,主要是講解了如何架構應用的流程和頁面,并給出了啟動界面中的記事列表的界面設計原型,目前的完整代碼如下:

  1. var App = new Ext.Application({ 
  2.     name: 'NotesApp'
  3.     useLoadMask: true
  4.     launch: function () { 
  5.  
  6.         NotesApp.views.notesListToolbar = new Ext.Toolbar({ 
  7.             id: 'notesListToolbar'
  8.             title: 'My Notes' 
  9.         }); 
  10.  
  11.         NotesApp.views.notesListContainer = new Ext.Panel({ 
  12.             id: 'notesListContainer'
  13.             layout: 'fit'
  14.             html: 'This is the notes list container'
  15.             dockedItems: [NotesApp.views.notesListToolbar] 
  16.         }); 
  17.  
  18.         NotesApp.views.viewport = new Ext.Panel({ 
  19.             fullscreen: true
  20.             layout: 'card'
  21.             cardAnimation: 'slide'
  22.             items: [NotesApp.views.notesListContainer] 
  23.         }); 
  24.     } 
  25. }) 

在《Sencha Touch開發實例:記事本應用(二)》中,我們將繼續學習,如何實現新建立和編輯記事的功能。

責任編輯:佚名 來源: it168
相關推薦

2011-07-26 10:44:15

Sencha Touc

2023-09-21 11:30:11

2011-09-02 15:18:49

Sencha Touc

2011-09-02 16:42:51

Sencha ToucWeb應用

2011-07-26 09:58:24

2011-07-25 16:21:22

Sencha touc

2012-01-10 14:10:26

Sencha Touc

2011-08-15 09:51:45

Sencha TouciPad

2011-09-05 10:49:14

Sencha ToucjQuery MobiHTML5

2011-09-05 11:23:26

EclipseSencha Touc框架

2009-09-03 13:08:43

C#調用記事本

2011-07-26 09:41:50

Sencha Touc特性HTML 5

2010-11-22 10:31:17

Sencha touc

2011-09-01 10:09:04

2011-07-25 15:55:21

Sencha ToucHtml 5

2011-09-05 10:27:02

Sencha Touc手機應用Android

2011-09-05 14:17:54

Sencha ToucMVC

2011-12-20 15:59:28

2024-01-10 09:50:58

AI 寫作功能CoWriterChatGPT

2011-09-05 11:27:17

Sencha Touc框架HTML5
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 巨大荫蒂视频欧美另类大 | av国产精品| 久久久亚洲精品视频 | 亚洲国产黄色av | 一a级片| 成人精品在线 | 精品国产鲁一鲁一区二区张丽 | 中文字幕第90页 | 午夜大片 | 亚洲一区二区av | 99视频在线| www操操| 天天拍天天色 | 午夜影院在线观看视频 | 欧美视频免费在线观看 | 久久99蜜桃综合影院免费观看 | 亚洲高清三级 | 国产一区二区黑人欧美xxxx | 欧美精品国产精品 | 日韩av一区二区在线观看 | wwww.xxxx免费| 国产一区二区三区日韩 | 日韩在线一区二区三区 | 男女网站免费 | 国产成人a亚洲精品 | 成人二区 | 色偷偷噜噜噜亚洲男人 | 国内91在线 | 欧美精品一区二区三区蜜桃视频 | 国产精品久久久久久久久大全 | 色综合网站 | 97视频在线观看网站 | 免费国产一区 | 成人午夜精品 | 91pao对白在线播放 | 亚洲午夜精品一区二区三区他趣 | 91在线影院 | 欧美日韩国产精品激情在线播放 | a级在线免费观看 | 成人特区| 二区在线视频 |