精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

BlackBerry應用開發者指南 創建客戶定制的UI組件

移動開發
本文依舊是介紹BlackBerry UI API篇,如何創建創建客戶定制的UI組件。你僅能將定制的上下文菜單項和布局增加到一個定制的 field 中。

本文為《BlackBerry應用開發者指南 UI API篇之創建客戶定制的UI組件》,本文依舊是介紹BlackBerry UI API篇,如何創建創建客戶定制的UI組件。

創建客戶定制的UI組件

你僅能將定制的上下文菜單項和布局增加到一個定制的 field 中。

創建定制的 field

為覆寫 field 的缺省行為,創建一個定制的 field。

(注:不要使用 Screen 對象來輸入文本。Screen 對象沒有明確的實現此功能,它需要復雜的輸入方法,例如國際化的鍵盤和 7100 系列的設備。為了實現不同輸入方法的無縫集成,擴展 Field 或者其任一子類。)

DrawStyle 接口的實現允許在定制的 field 上繪制樣式。

客戶定制的 field 應該實現所有相關的系統樣式。例如,USE_ALL_WIDTH 和 USE_ALL_HEIGHT適用于許多 field。

擴展 Field 類

擴展 Field 類和任一其子類,指定定制 Field 的特征。

代碼

定義按鈕的標簽,圖形,以及樣式

你的構造子的實現定義了按鈕的標簽,圖形,以及樣式。

代碼

指定 field 中對象的安排

任何擴展 Field 的類必須實現 layout().Field 管理器調用了 layout()方法來決定 field應該如何根據可用的控件安排它的內容。

代碼

定義需要的寬度

(注:在大多數情況下,通過覆寫 getPreferredWidth(),確保合適的布局出現在定制的布局管理器里。)

getPreferredWidth()的實現計算出定制 Field 的寬度,這個定制 Field 是基于標簽 Field的相對尺寸的。使用相對尺寸來確保標簽不會超出標簽的尺寸。

代碼

代碼

定義需要的高度

(注:在大多數情況下,通過覆寫 getPreferredHeight(),確保合適的布局出現在定制的布局管理器里。)

getPreferredHeight()的實現計算出定制 Field 的高度,這個定制 Field 是基于標簽 Field的相對尺寸的。它確保了標簽不會超出 field 的尺寸。

代碼

定義定制 field 的外觀

paint()的實現定義了 BlackBerry 設備屏幕上的定制 Field 的外觀,不管什么時候 Field的域標記為無效,Field 管理器都調用 paint()來重繪 Field。

技巧:驗證 paint()是否是有效率的,因為不管什么時候 field 發生變化,UI 框架調用 paint()方法。對于大數量的 field,使用 Graphics.getClippingRect()并在可見的區域里繪圖來保存繪制時間。

代碼

代碼

處理焦點事件

為了支持焦點事件,使用 Field.FOCUSABLE 樣式以及實現 Field.moveFocus().如果你想你的 Field 接收焦點,覆寫 Field.isFocusable()返回 true。

當 Field 獲得焦點時,UI 框架調用 onFocus(),當 Field 失去焦點時,調用 unFocus().如果你的 field 對于這些事件需要特定的行為,覆寫這些方法。框架調用 moveFocus()來處理 field 的焦點移動事件。它對應 trackwheelRoll 事件,覆寫 drawFocus( )。

實現 set和 get方法

Field 的 get 和 set 方法的實現,增加了 Field 的能力。

(注:所有 get 和 set 方法應該在 field 加入到一個 Screen 的前后工作。例如,如果現在屏幕上的 field 合適的調用了 invalidate()或 updateLayout()setLabel(),應該使用一個新值來修改其顯示。)

代碼

代碼實例

CustomButtonField.java 創建了具有多個圖形的 button  field。

代碼 

代碼 

代碼 

代碼 

代碼 

代碼#p#

創建定制的上下文菜單項

在 Field 類里,創建定制的上下文菜單項。

代碼

提供一個上下文菜單

在主應用程序類里,覆寫 makeContextMenu()方法提供一個上下文菜單。

代碼

創建應用程序菜單

在主應用程序類里,覆寫 makeMenu()方法創建應用程序菜單,并且無論合十,當特定的 field獲取焦點時,更新上下文菜單。

代碼

代碼實例

實例:  ContextMenuSample.java

  1. /**  
  2. *  ContextMenuSample.java  
  3. *  Copyright  (C)  2001-2005  Research  In  Motion  Limited.  All  rights  
  4. reserved.  
  5. */ 

代碼

代碼

#p#

創建定制的布局管理器

Manager 對象管理 UI 組件的位置以及決定屏幕上的 field 如何安排。

創建一個定制的布局管理器

擴展 Manager 類或其任一子類

代碼

返回一個優先的 Field寬度

覆寫 getPreferredWidth(),以致它能為管理器返回一個優先的 Field 寬度。

getPreferredWidth()的實現可以返回不同的值,取決于布局管理器的目的。例如,如果管理器擴展了 HorizontalFieldManager,getPreferredWidth()返回所有 field 寬度的總和。如果擴展了 VerticalFieldManager,getPreferredWidth()返回最寬 field 的寬度。

代碼

(注:TextField 和 Manger 使用了指派給他們的整個寬度。為組織 2 個或更多的水平上的對象,分別覆寫它們各自的 getPreferredWidth()方法。為了組織多個水平上的TextField,覆寫 layout().)

返回一個優先 Field 高度

覆寫 getPreferredHeight(),以致它能為管理器返回一個優先的 Field 高度。

代碼

指定子 Field如何安排

subLayout()方法指定了管理器如何在屏幕上組織 field。它得到管理器中 field 的個數,然后為子 field 設置合適的位置以及布局。

layout() 調用了 subLayout() 方法,subLayout() 方法通過調用每個管理器包含的 field 的setPositionChild ()以及 LayoutChild(),控制每個子 field 如何加到屏幕上。

代碼

代碼

(注:為設置 field 需要的大小,在 subLayout()方法里調用 setExtend()。如果你不調用 setExtend(),則不會繪制每個 field,并且也不拋出一個異常。)

處理焦點

當用戶滾動滑輪時,為了指定 field 該如何得到焦點,覆寫 nextFocus()方法。direction 參數描述了焦點移動的方向(一般來說,當滑輪向下滾動,焦點向下并且向右方向。當滑輪向上滾動,焦點向上并且向左)。

代碼

為了將焦點轉移到下一個 field,而以管理器的順序,這個 field 不是下一個 field,那么覆寫nextFocus().例如,如果你想為你的管理器實現 Page-up 和 Page-down 的功能,那么 nextFocus()就有用了。

當可見區域改變時重繪 field

缺省的,定制的管理器在不考慮剪輯區域下調用 paint()重繪所有 field。如果這導致了不必要的重繪,當可見區域改變時,僅 subpaint()的實現重繪所有 field。

代碼實例

例:  DiagonalManager.java

  1. /**  
  2. *  DiagonalManager.java  
  3. *  Copyright  (C)  2001-2005  Research  In  Motion  Limited.  All  rights  
  4. reserved.  
  5. */ 
  6. package   
  7. com.rim.samples.docs.custommenu;  
  8. import   
  9. net.rim.device.api.system.*; 

代碼

代碼#p#

創建列表

一個 ListField 包含了多列可選項。為了使用戶可以選擇列表中多項,聲明列表為MULTI_SELECT.

創建一個回調對象

ListFieldCallback 對象為列表控制所有重繪任務。每次要求 Field 顯示列表中的一個條目。必要的方法也會在回調對象中調用。

ListFieldCallback 接口的實現創建了一個回調對象。系統調用這個接口的方法繪制列表的行,獲得一個指定的列表元素,或決定列表的寬度。

允許 Field重繪一行

drawListRow()的實現允許 Field 重繪一行。傳遞到 drawListRow()的圖形上下文代表整個列表。相應地,drawText()必須指明繪制哪一行。

允許 Field從列表中得到一個條目(Entry )

get()的實現允許 field 從列表中得到一個條目。本方法返回一個包含在有明確索引行中的對象。

為列表返回一個優先的寬度

getPreferredWidth()的實現為列表返回一個優先的寬度。在下面的實現中,getPreferredWidth()返回整個屏幕的繪制寬度。

getPreferredWidth()的實現返回一個不同的值,這依賴 field 管理器的類型。例如,如果管理器擴展了 HorizontalFieldManager,getPreferredWidth()返回所有 field 寬度的總和。如果擴展了 VerticalFieldManager,getPreferredWidth()返回最寬 field 的寬度。

指派回調以及加入條目到列表中

創建列表對象,并且將回調指派這個對象。

創建列表對象

為了列表創建 ListField 對象以及 ListCallback 對象。

(注:ListCallback 是一個定制的 ListFieldCallback 類,這個類在 66 頁的“創建一個回調對象”中創建。)

設置回調

調用 setCallback()將 ListFieldCallback 與 ListField 關聯。這個關聯允許回調增加列表項到列表中。

增加列表條目

為了將條目增加到列表中,創建條目,并指定一個索引,并在這個索引上插入每個條目到ListField 對象中。然后每個 ListField 對象到 ListFieldCallback 中。

代碼實例

例:SampleListFieldCallback.java

  1. /**  
  2. *  SampleListFieldCallback.java  
  3. *  Copyright  (C)  2001-2005  Research  In  Motion  Limited.  All  rights  
  4. reserved.  
  5. */ 

【編輯推薦】

  1. BlackBerry應用開發者指南 創建客戶定制的UI組件
  2. BlackBerry應用開發者指南 UI API篇之管理UI組件
  3. BlackBerry應用開發者指南 UI API篇之顯示UI組件
  4. BlackBerry應用開發者指南基礎附錄 .alx文件
  5. BlackBerry應用開發者指南 選項API

 

責任編輯:佚名 來源: 網絡整理
相關推薦

2011-04-14 10:05:16

BlackBerry

2011-04-14 10:03:32

UI組件BlackBerry

2011-04-13 09:55:16

Mail APIBlackBerry

2011-04-13 13:38:57

選項APIBlackBerry

2011-04-13 11:31:06

PIM APIBlackBerry

2011-04-02 13:44:08

2011-04-13 14:10:27

.alx文件BlackBerry

2011-04-15 16:05:00

監聽UI對象的改變BlackBerry

2011-04-15 14:22:20

圖片操作UIBlackBerry

2011-04-18 11:00:34

使用音頻BlackBerry

2011-07-19 09:51:32

性能優化Designing FAndroid

2009-03-24 08:51:30

YUIJavaJavascript

2020-07-15 07:00:00

移動應用開發者指南

2011-02-16 16:45:23

MWCRIMBlackBerry

2022-01-02 06:59:43

SentrySDK 開發客戶端報告

2024-02-01 09:37:42

Kubernetes服務網格? 命令

2023-11-26 00:17:21

2024-05-07 08:45:16

OpenAILlamaIndex大語言模型

2011-04-26 10:19:46

BlackBerry

2018-03-27 23:25:40

Paddle
點贊
收藏

51CTO技術棧公眾號

国产免费a视频| 国产成人精品综合久久久久99| 天堂а√在线8种子蜜桃视频| 国产一区二区你懂的| 亚洲男人av在线| 一本一道久久a久久综合蜜桃| 色黄网站在线观看| 久久蜜臀精品av| 91成人理论电影| 99re这里只有精品在线| 午夜日本精品| 国产一区二区三区在线视频 | 性欧美暴力猛交另类hd| 日韩中文字幕av| 中文字幕 日本| 爱情电影网av一区二区| 日韩欧美中文在线| 大荫蒂性生交片| 91在线视频免费看| www.欧美.com| 91丨九色丨国产| 久久久999久久久| 91久久中文| 另类图片亚洲另类| 一级在线观看视频| 同性恋视频一区| 欧美mv日韩mv亚洲| 午夜剧场在线免费观看| 欧美大电影免费观看| 亚洲国产中文字幕| 日韩视频 中文字幕| 1024免费在线视频| 国产日韩欧美精品在线| 久久综合久久久| 黄色av一区二区三区| 精东粉嫩av免费一区二区三区| 日韩av高清不卡| 中文字幕在线字幕中文| 雨宫琴音一区二区在线| 欧美成人午夜视频| 色老板免费视频| 国产精品国产三级国产在线观看| 亚洲性69xxxbbb| 波多野结衣办公室33分钟| 欧美激情极品| 亚洲国产精品久久91精品| 无码人妻久久一区二区三区蜜桃| 亚洲男人在线| 91精品国产综合久久婷婷香蕉 | 日本中文字幕在线视频观看 | 亚洲欧美日韩成人高清在线一区| 亚洲午夜在线观看| 啊v在线视频| 欧美激情一区二区三区在线| 欧美中日韩一区二区三区| 四虎精品成人免费网站| 久久综合九色综合欧美亚洲| 免费一区二区三区| 狠狠狠综合7777久夜色撩人| 久久一日本道色综合| 欧美成人免费在线| 国产理论电影在线观看| 中文字幕精品—区二区四季| 一区二区三区视频在线播放| 黄色一级大片在线免费看产| 亚洲精品一二三区| 国产色一区二区三区| 成年男女免费视频网站不卡| 日韩欧美国产网站| 天天爽天天爽夜夜爽| 日韩综合久久| 日韩一区二区电影在线| 一级黄色电影片| 欧美激情15p| 伊人精品在线观看| 国产精品成人69xxx免费视频| 欧美日本一区| 欧美在线www| 国产亚洲欧美日韩高清| 久久69国产一区二区蜜臀| 91久久久一线二线三线品牌| 黄色片一区二区三区| 91麻豆免费在线观看| 亚洲日本无吗高清不卡| 在线观看的网站你懂的| 黑人与娇小精品av专区| 国产精品久久久毛片| 日韩高清一区| 亚洲欧美日韩在线一区| 97在线观看免费高| 亚洲精选国产| 成人免费网站在线| 婷婷综合激情网| 国产精品美女久久久久久久久| av动漫在线免费观看| 欧美无毛视频| 日韩视频免费观看高清完整版在线观看| 中文字幕在线播放一区| 日韩在线观看一区| 97精品国产97久久久久久春色 | 久久精品久久99精品久久| 国产精品jizz视频| 亚洲免费视频一区二区三区| 亚洲成精国产精品女| 一区二区三区 日韩| 国产精品巨作av| 久久精品国产成人| 日本韩国欧美中文字幕| 国产精品一区二区三区四区| 青青草原成人| 678在线观看视频| 4438x亚洲最大成人网| 免费看黄色的视频| 伊人久久综合| 96成人在线视频| 97在线观看免费观看高清| 精品福利免费观看| 妖精视频在线观看| 97精品国产| 国产精品久久久久久久久久| 色窝窝无码一区二区三区| 国产精品久久久久婷婷二区次| 91猫先生在线| 久久九九精品视频| 最新日韩中文字幕| 午夜一区二区三区四区| 91丝袜美腿高跟国产极品老师 | 亚洲毛茸茸少妇高潮呻吟| 久草网视频在线观看| 久久91精品国产91久久小草| 日韩福利视频| 欧洲一区二区三区精品| 亚洲国产日韩精品在线| 四虎免费在线视频| 国产精品自拍三区| 国产日本欧美在线| 亚洲一区二区av| xvideos亚洲人网站| 中文天堂在线资源| 国产人成亚洲第一网站在线播放| 91免费视频网站在线观看| 国产精品流白浆在线观看| 欧美肥老妇视频| 亚洲国产精品欧美久久| 一区二区三区四区乱视频| 久久发布国产伦子伦精品| 欧美二区视频| 成人综合电影| 2021中文字幕在线| 日韩成人在线视频网站| 国产精品人人人人| 国产亚洲精久久久久久| 深夜黄色小视频| 国产精品88久久久久久| 亚洲一区二区三区xxx视频| caoporn97在线视频| 欧美电影免费观看完整版| 精品视频久久久久| 91麻豆国产福利在线观看| 日韩久久一级片| 国产中文精品久高清在线不| 国产精品扒开腿做爽爽爽男男| www 日韩| 日韩一区二区在线看| 国产一级中文字幕| 91免费国产在线观看| 色一情一乱一伦一区二区三区日本| 精品大片一区二区| 亚洲一区二区免费| 韩日毛片在线观看| 国产一区二区三区在线视频| 国产特级黄色片| 亚洲一区二区欧美激情| 成年人网站免费在线观看 | 国产精品亚洲精品| 午夜在线激情影院| 亚洲欧美国产一区二区三区| 136福利视频导航| 亚洲一区在线观看视频| 国产全是老熟女太爽了| 精品亚洲国产成人av制服丝袜| 第九区2中文字幕| 色橹橹欧美在线观看视频高清| 国产精品美女无圣光视频| 日韩少妇视频| 亚洲色图25p| 国产成人a人亚洲精品无码| 午夜激情久久久| 国产白丝一区二区三区| 高清国产一区二区三区| 男人搞女人网站| 欧美日韩国产色综合一二三四| 免费av在线一区二区| 国产精品视频一区二区三区综合| 午夜美女久久久久爽久久| av在线1区2区| 亚洲精品久久久久久久久| 亚洲视频久久久| 天天色 色综合| 日韩在线视频网址| 国产欧美日韩卡一| 亚洲天堂av网站| 精品一区二区三区在线观看国产| 日韩国产欧美亚洲| 在线国产一区二区| 日本一区二区三区www| 国产精品流白浆在线观看| 成人春色激情网| 国产日韩另类视频一区| 欧美激情网友自拍| 嫩草在线视频| 尤物九九久久国产精品的分类| 黄色成人一级片| 制服.丝袜.亚洲.中文.综合| 一二三区免费视频| 午夜私人影院久久久久| avtt天堂在线| 中文字幕一区二区三区在线观看 | 亚洲精品久久久中文字幕| 一区二区日韩免费看| 国产女主播自拍| 欧美日韩精品一本二本三本 | 韩国成人一区| 婷婷综合国产| 成人黄色大片在线免费观看| 欧美国产日韩电影| 成年人午夜久久久| 久久999免费视频| 成年午夜在线| 国产亚洲精品美女久久久| 日本加勒比一区| 日韩免费性生活视频播放| 91麻豆一区二区| 欧美日韩在线一区二区| 日本中文字幕久久| 色综合中文字幕国产| 黄网在线观看视频| 精品久久久久久久久久ntr影视 | 国产精品97| 一区二区视频在线观看| 精品一区电影| 特级西西444www大精品视频| 国产最新精品| 亚洲午夜精品久久| 婷婷成人基地| 大桥未久一区二区三区| 一区二区三区在线电影| 中国黄色录像片| 欧美日韩午夜| avav在线播放| 夜久久久久久| 免费日韩视频在线观看| 视频一区免费在线观看| 人人爽人人av| 久久99精品久久久久婷婷| 奇米视频888| 国产精品1区二区.| 五月天丁香社区| 久久久久久亚洲综合影院红桃| 亚洲国产欧美视频| 国产人妖乱国产精品人妖| 国产精品69久久久久孕妇欧美| 亚洲欧美自拍偷拍| 久久国产精品波多野结衣| 亚洲成av人片一区二区| 久久夜色精品国产噜噜亚洲av| 精品国产91久久久久久| 日韩国产成人在线| 欧美久久久久久久久久| 国产小视频免费观看| 日韩精品视频在线| 成人免费黄色网页| 欧美不卡视频一区发布| 热色播在线视频| 国产日韩欧美在线播放| 亚洲日本va| 蜜桃久久影院| 一区二区三区四区电影| 日本a在线免费观看| 日韩激情av在线| 深爱五月综合网| 94色蜜桃网一区二区三区| 激情五月深爱五月| 亚洲自拍偷拍综合| 波多野结衣人妻| 日韩欧美在线观看一区二区三区| 天堂在线视频网站| 色爱av美腿丝袜综合粉嫩av| 国产后进白嫩翘臀在线观看视频| 国产99久久精品一区二区 夜夜躁日日躁 | 九色网友自拍视频手机在线| 久久久久北条麻妃免费看| 美女网站在线看| 91免费看片网站| 婷婷精品在线观看| 无码毛片aaa在线| 视频一区视频二区中文| 中文字幕在线播放一区二区| 久久久久国产成人精品亚洲午夜 | 福利视频一区二区| 国产精品久久久久久免费免熟| 日韩电影第一页| 超碰在线无需免费| 国产精品ⅴa在线观看h| 国产一区二区三区不卡av| 亚洲视频sss| 免费亚洲婷婷| 乱码一区二区三区| 亚洲欧洲日韩综合一区二区| 你懂的国产视频| 日韩一区二区三区视频在线观看| 黄色大片在线看| 91精品国产精品| 91精品导航| 超碰成人在线免费观看| 久久最新视频| 7788色淫网站小说| 一区二区高清在线| 国产精品-色哟哟| 在线观看日韩视频| 亚洲人成午夜免电影费观看| 国产伦理久久久| 欧美精品一区二区三区久久久竹菊| 中文字幕亚洲乱码| 久久精品一区四区| 丰满人妻老熟妇伦人精品| 亚洲国产精品系列| 久久免费电影| 成人免费在线一区二区三区| 中文一区一区三区免费在线观看| 亚洲男人天堂av在线| 国产精品乱人伦一区二区| 中文字幕免费高清网站| 亚洲热线99精品视频| 最新欧美色图| 欧美三级网色| 久久综合亚州| 亚洲一区二区自偷自拍| 日本乱码高清不卡字幕| 久久精品色图| 国产成人自拍视频在线观看| 久久综合欧美| 天天碰免费视频| 亚洲国产精品v| 羞羞色院91蜜桃| 中日韩午夜理伦电影免费| 99久久亚洲国产日韩美女| 色阁综合av| 老色鬼精品视频在线观看播放| 成人欧美一区二区三区黑人一| 欧美日韩二区三区| 成人看av片| 国产传媒欧美日韩| 国产精品久久久免费| 插吧插吧综合网| 欧美性受极品xxxx喷水| 三区四区在线视频| 亚洲va电影大全| 欧美久色视频| 51调教丨国产调教视频| 色综合久久久久综合体桃花网| 激情在线视频| 91精品国产自产在线老师啪| 亚洲精品久久久| 国产精品熟妇一区二区三区四区 | 不卡av免费在线| 国产精品国产馆在线真实露脸| 国产精品久久免费| 欧美激情视频一区二区| 神马日本精品| 无需播放器的av| 亚洲最新视频在线观看| 色鬼7777久久| 国产日产亚洲精品| 激情综合在线| 少妇久久久久久久久久| 在线电影一区二区三区| jizz一区二区三区| 日韩片电影在线免费观看| 国产在线精品不卡| 午夜精品三级久久久有码| 亚洲偷欧美偷国内偷| 色播一区二区| 久久国产乱子伦免费精品| 国产精品不卡在线| 老熟妇高潮一区二区高清视频| 热久久美女精品天天吊色| 亚洲综合婷婷| 欧美大波大乳巨大乳| 精品少妇一区二区三区免费观看| 欧美大片免费高清观看| 国产树林野战在线播放| 久久精品人人做| 精品国产黄色片| 国产精品狠色婷| 亚洲国产国产亚洲一二三| 国产成人精品视频免费| 日韩成人xxxx| 日韩免费精品| 黄色永久免费网站|