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

在Sencha Touch 2.0中使用設(shè)計(jì)布局

移動(dòng)開發(fā) 移動(dòng)應(yīng)用
在你的應(yīng)用程序中,布局用來描述組件的大小和空間位置信息。例如,就一個(gè)電子郵件的客戶端舉例來說,它有一個(gè)固定在屏幕左側(cè)的郵件列表,占屏幕寬度的1/3;在屏幕剩余的右側(cè)空間,有一個(gè)查看郵件具體內(nèi)容的瀏覽面板。

導(dǎo)言及Hbox布局(水平布局)

我們可以用hbox布局來實(shí)現(xiàn)這兩個(gè)組件的伸縮Flex,伸縮Flex意味著我們能夠把可用的空間按照每一個(gè)子組件的Flex系數(shù)進(jìn)行分割。為了實(shí)現(xiàn)剛才我們說的郵件客戶端的例子,我們可以像這樣來設(shè)置伸縮:

 

這個(gè)例子的代碼非常簡單,我們僅需要為任意一個(gè)容器指定“hbox”布局,然后,為每一個(gè)處于其中的組件分配一個(gè)Flex系數(shù)即可(在這個(gè)例子中,組件用的是面板-Panels)。

  1. Ext.create('Ext.Container', { 
  2.  
  3. fullscreen: true, 
  4.  
  5. layout: 'hbox', 
  6.  
  7. items: [ 
  8.  
  9.  
  10. xtype: 'panel', 
  11.  
  12. html: 'message list', 
  13.  
  14. flex: 1 
  15.  
  16. }, 
  17.  
  18.  
  19. xtype: 'panel', 
  20.  
  21. html: 'message preview', 
  22.  
  23. flex: 2 
  24.  
  25.  
  26.  
  27. }); 

在這個(gè)例子中,我們創(chuàng)建了一個(gè)填滿整個(gè)屏幕的容器,并在其內(nèi)部創(chuàng)建了一個(gè)郵件列表面板和一個(gè)內(nèi)容瀏覽面板。它們的Flex系數(shù)分別為1和2(左側(cè)的面板Flex系數(shù)為1,右側(cè)面板Flex系數(shù)為2),這意味著左側(cè)面板將占去1/3的寬度,右側(cè)面板將占用其余2/3的寬度。如果我們的容器寬度為300像素,那么左側(cè)的面板的寬度為100像素,右側(cè)面板的寬度為200像素。

hbox是最有用的布局之一,它可以在水平方向組合排列組件。更多的例子,請(qǐng)參閱的HBox文檔。

VBox布局(垂直布局)

VBox布局與HBox布局基本類似,只是它的排列方向?yàn)榇怪倍皇撬健M瑯樱覀兛梢院唵蔚陌阉胂駷槿缦聝蓚€(gè)盒子:

 

這段代碼幾乎與上一個(gè)例子的代碼相同,我們僅僅是把容器的布局屬性設(shè)置為"vbox":

  1. Ext.create('Ext.Container', { 
  2.  
  3. fullscreen: true, 
  4.  
  5. layout: 'vbox', 
  6.  
  7. items: [ 
  8.  
  9.  
  10. xtype: 'panel', 
  11.  
  12. html: 'message list', 
  13.  
  14. flex: 1 
  15.  
  16. }, 
  17.  
  18.  
  19. xtype: 'panel', 
  20.  
  21. html: 'message preview', 
  22.  
  23. flex: 2 
  24.  
  25.  
  26.  
  27. }); 

在這個(gè)例子中,如果容器的高度為300像素,那么***個(gè)面板(FLEX:1)的高度為100像素,第二個(gè)面板(FLEX:2)高度為200像素。 可以參見VBox的文檔以獲取更多的例子。

Card布局(卡片布局)

有時(shí)你想將展現(xiàn)多個(gè)充滿信息的屏幕,但現(xiàn)實(shí)是,你只有一個(gè)小屏幕可用。TabPanels和Carousels都能夠讓你在同一時(shí)間看到你想展示的諸多屏幕中的一個(gè),它們都是使用Card布局來實(shí)現(xiàn)的。

卡片布局在其應(yīng)用的容器中占滿整個(gè)空間,并使得當(dāng)前活動(dòng)的項(xiàng)目完全填滿該容器,并隱藏的其余的項(xiàng)目。Card布局允許你選擇任何一個(gè)項(xiàng)目作為當(dāng)前可見的項(xiàng)目,但在同一時(shí)間只能顯示一個(gè):

 

在這個(gè)例子中,灰色方塊是我們的容器,它里面的藍(lán)色方塊是當(dāng)前活躍的項(xiàng)目。其他三個(gè)項(xiàng)目在視圖中是隱藏的,但這三個(gè)隱藏項(xiàng)目可以替換成為當(dāng)前顯示的項(xiàng)目。通常并不直接創(chuàng)建Card布局,你可以這樣來實(shí)現(xiàn):

  1. var panel = Ext.create('Ext.Panel', { 
  2.  
  3. layout: 'card', 
  4.  
  5. items: [ 
  6.  
  7.  
  8. html: "First Item" 
  9.  
  10. }, 
  11.  
  12.  
  13. html: "Second Item" 
  14.  
  15. }, 
  16.  
  17.  
  18. html: "Third Item" 
  19.  
  20. }, 
  21.  
  22.  
  23. html: "Fourth Item" 
  24.  
  25.  
  26.  
  27. }); 
  28.  
  29. panel.getLayout().setActiveItem(1); 

在這里,我們創(chuàng)建一個(gè)具有卡片布局的面板,在***一句代碼中設(shè)置第二個(gè)項(xiàng)目為該面板的顯示項(xiàng)(數(shù)組的下標(biāo)是從0開始的,所以1代表第二項(xiàng))。通常情況下,你***使用一個(gè)Tab Panel或Carousel。

Fit布局(填充布局)

填充布局(Fit Layout)可能是最簡單的布局了。它的作用就是使一個(gè)子組件撐滿它所在的父容器。

 

例如,如果你有一個(gè)200像素*200像素的容器,并為它建立一個(gè)獨(dú)立的子組件并將該容器的布局設(shè)置為“Fit布局”,那么子組件也將是200像素*200像素:

  1. var panel = Ext.create('Ext.Panel', { 
  2.  
  3. width: 200, 
  4.  
  5. height: 200, 
  6.  
  7. layout: 'fit', 
  8.  
  9. items: { 
  10.  
  11. xtype: 'panel', 
  12.  
  13. html: 'Also 200px by 200px' 
  14.  
  15.  
  16. }); 
  17.  
  18. Ext.Viewport.add(panel); 

Docking(停靠)

每一種布局均具備在其中“停靠”組件的功能。“停靠”功能能夠使你將新增的組件放置在父容器的頂部、右側(cè)、底部和左側(cè),并會(huì)自動(dòng)重新分配其余組件所占的空間大小。

例如,回到前面我們***個(gè)布局:hbox布局,讓我們想象一下,我們要停靠在頂部的一個(gè)新增組件,如下圖的藍(lán)色部分:

 

這種停靠經(jīng)常用來實(shí)現(xiàn)toolbar和banner等,并很容易就通過這樣的語句 Dock:'top' 來實(shí)現(xiàn):

  1. Ext.create('Ext.Container', { 
  2.  
  3. fullscreen: true, 
  4.  
  5. layout: 'hbox', 
  6.  
  7. items: [ 
  8.  
  9.  
  10. dock: 'top', 
  11.  
  12. xtype: 'panel', 
  13.  
  14. height: 20, 
  15.  
  16. html: 'This is docked to the top' 
  17.  
  18. }, 
  19.  
  20.  
  21. xtype: 'panel', 
  22.  
  23. html: 'message list', 
  24.  
  25. flex: 1 
  26.  
  27. }, 
  28.  
  29.  
  30. xtype: 'panel', 
  31.  
  32. html: 'message preview', 
  33.  
  34. flex: 2 
  35.  
  36.  
  37.  
  38. }); 

你可以在容器中增加多個(gè)停靠在其中的組件,只需要在你想停靠的組件上簡單的設(shè)置Dock屬性就可以了。你可以將組件停靠在父容器的任意一邊。

例如,我們可以在之前的vbox布局中將一個(gè)新的組件停靠在父容器的左側(cè):

 

我們可以指定新增的組件的dock屬性為"left",即可實(shí)現(xiàn)此例。

  1. Ext.create('Ext.Container', { 
  2.  
  3. fullscreen: true, 
  4.  
  5. layout: 'vbox', 
  6.  
  7. items: [ 
  8.  
  9.  
  10. dock: 'left', 
  11.  
  12. xtype: 'panel', 
  13.  
  14. width: 100, 
  15.  
  16. html: 'This is docked to the left' 
  17.  
  18. }, 
  19.  
  20.  
  21. xtype: 'panel', 
  22.  
  23. html: 'message list', 
  24.  
  25. flex: 1 
  26.  
  27. }, 
  28.  
  29.  
  30. xtype: 'panel', 
  31.  
  32. html: 'message preview', 
  33.  
  34. flex: 2 
  35.  
  36.  
  37.  
  38. }); 

你可以在父容器的每一側(cè)同時(shí)停靠多個(gè)組件(例如,可以在底部同時(shí)停靠幾個(gè)組件)。

延伸閱讀

布局只是Sencha Touch2的一部分。如果要了解更多的關(guān)于此框架的信息以及了解它是如何運(yùn)作的,我們建議你進(jìn)一步參考以下內(nèi)容:

Components and Containers

The Class System

The Data Package

Getting Started

在 2011年10月25日 20:33 被 威老 ***編輯

 

責(zé)任編輯:佚名 來源: 移動(dòng)Web開發(fā)社區(qū)
相關(guān)推薦

2011-09-02 15:42:55

Sencha Touc布局

2011-09-02 15:58:38

Sencha Touc布局

2011-10-18 08:59:46

Sencha ToucHTML5

2011-09-02 15:18:49

Sencha Touc

2011-10-26 10:43:19

Sencha Touc

2012-01-10 13:21:33

Sencha Touc使用data包

2011-10-26 10:21:40

Sencha Touc組件

2012-05-01 20:57:26

Sencha Touc

2011-10-26 10:32:05

Sencha Touc數(shù)據(jù)視圖

2011-09-30 14:15:10

Sencha ToucSencha Touc

2011-10-18 09:49:40

新特征Sencha Touc

2011-07-26 09:41:50

Sencha Touc特性HTML 5

2010-11-22 10:31:17

Sencha touc

2011-07-25 15:55:21

Sencha ToucHtml 5

2011-09-02 16:08:09

Sencha ToucAPI文檔

2011-09-05 11:23:26

EclipseSencha Touc框架

2011-09-05 13:53:08

Sencha Touc列表

2011-09-05 14:09:06

Sencha Touc函數(shù)

2011-09-02 15:12:29

PhoneGapSencha Touc

2011-09-05 12:49:59

Sencha Touc事件
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 91看片网| 天天天操操操 | 一区二区三区视频在线观看 | 久久久精彩视频 | 精品三级在线观看 | 97人人澡人人爽91综合色 | 国产精品久久久久久久久久 | 91九色网站| 91精品亚洲 | 日本不卡免费新一二三区 | 日本三级线观看 视频 | 亚洲视频欧美视频 | 男人天堂午夜 | 99re在线视频免费观看 | 99精品欧美一区二区蜜桃免费 | 天堂中文资源在线 | 午夜久久久久久久久久一区二区 | 国产在线精品一区二区 | 欧美一区二区三区 | 亚洲一区二区三区免费在线观看 | 精品福利一区二区三区 | 99精品欧美一区二区三区 | 久久久人成影片一区二区三区 | 国产亚洲网站 | 亚洲一区二区三区 | 欧美在线资源 | 中文字幕久久精品 | 精品九九久久 | 91久久国产综合久久91精品网站 | 久久久久久久夜 | 成人啊啊啊 | 中文字幕亚洲一区二区va在线 | 日韩在线免费 | 91在线视频在线观看 | 欧美专区在线 | 成人黄色三级毛片 | 91久久爽久久爽爽久久片 | 亚洲一区二区三区四区五区中文 | 99久久精品免费看国产免费软件 | 精品福利一区二区三区 | 啪啪毛片 |