新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 用Eclipse開發(fā)iPhone Web 應(yīng)用程序

用Eclipse開發(fā)iPhone Web 應(yīng)用程序

作者:Adam Houghton , 高級軟件開發(fā)人員 時間:2008-08-22 來源:21IC 中國電子網(wǎng) 收藏

  iDoc UI

本文引用地址:http://2s4d.com/article/87266.htm

  針對 進(jìn)行開發(fā)時,必須只關(guān)注 應(yīng)當(dāng)快速地完成特定任務(wù),不應(yīng)該嘗試包括所有可能的功能。使用 iDoc,用戶必須找到關(guān)于 Java 類的基本文檔,例如類名、方法名、方法簽名和注釋。通過指向目標(biāo)詳細(xì)信息頁面的三個導(dǎo)航級別顯示這些信息。

  包導(dǎo)航
  頂層包 

  類導(dǎo)航
  包內(nèi)的類、接口、異常和錯誤

  類中的描述、字段、構(gòu)造函數(shù)和方法 
  注釋、簽名和參數(shù) 

  為了使 iDoc 保持整齊并且以任務(wù)為目的,需要省略一些傳統(tǒng) Javadoc 功能。例如,不顯示包描述注釋。由于這些功能通常不包含有用信息(例如,acme.client 包含客戶機代碼),并且有時被同時省略,因此把它們從 iDoc 中移除并簡化接口就顯得十分有意義。

  要獲得三個導(dǎo)航級別,請使用邊對邊 (edge-to-edge) 列表。這是在本機 中常用的構(gòu)造,用于瀏覽聯(lián)系人、電子郵件和音樂。邊對邊列表將在 44 像素的等高行中顯示項,并且有助于在大量信息中滾動查找。Apple 的 iPhone 人機接口指南 提供了構(gòu)造邊對邊列表的規(guī)格,包括字體、字體大小和邊框間距。iUi 框架用 CSS 和 JavaScript 語言實現(xiàn)這些規(guī)格,允許您創(chuàng)建像本機 iPhone 組件那樣顯示的簡單 HTML 列表。

  清單 1 顯示了頁眉,以及 java.applet 和 java.rmi 包的前兩個導(dǎo)航級別。

  清單 1. 帶有頁眉和前兩個導(dǎo)航級別的 HTML 文檔

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

   <html xmlns="http://www.w3.org/1999/xhtml">

  <head>

  <title>iDoc</title>

  <meta name="viewport" content="width=320; initial-scale=1.0;

   maximum-scale=1.0;

   user-scalable=0;"/>

  <style type="text/css" media="screen">@import

   "iui/iui.css";</style>

  <style type="text/css" media="screen">@import

   "iDoc.css";</style>

  <script type="application/x-javascript"

   src="iui/iui.js"></script>

  </head>

   <body onclick="console.log('Hello', event.target);">

   <div class="toolbar">

     <h1 id="pageTitle"></h1>

     <a id="backButton" class="button"

        href="#"></a>

 

  <ul id="home" title="Packages" selected="true">

      <li><a href="#java.applet">java.applet</a></li>

      <!-- more packages...-->

      <li><a href="#java.rmi">java.rmi</a></li>

  </ul>

  <ul id="java.applet" title="java.applet">

      <li class="group">Interfaces</li>

      <li><a href="java.applet.AppletContext.html">

         AppletContext</a></li>

 

         AppletStub</a></li>

 

         AudioClip</a></li>

      <li class="group">Classes</li>

      <li><a href="java.applet.Applet.html">Applet

         </a></li>

      <li><a href="java.applet.Applet.AccessibleApplet.html">

         AccessibleApplet</a></li>

  </ul>

  <ul id="java.rmi" title="java.rmi">

      <li class="group">Interfaces</li>

      <li><a href="java.rmi.Remote.html">

         Remote</a></li>

      <li class="group">Classes</li>

      <li><a href="java.rmi.MarshalledObject.html">

         MarshalledObject</a></li>

      <li><a href="java.rmi.Naming.html">

         Naming</a></li>

      <li><a href="java.rmi.RMISecurityManager.html">

         RMISecurityManager</a></li>

      <li class="group">Exceptions</li>

      <li><a href="java.rmi.AccessException.html">

         AccessException</a></li>

      <li><a href="java.rmi.AlreadyBoundException.html">

         AlreadyBoundException</a></li>

      <li><a href="java.rmi.ConnectException.html">

         ConnectException</a></li>

      <li><a href="java.rmi.ConnectIOException.html">

         ConnectIOException</a></li>

      <li><a href="java.rmi.MarshalException.html">

         MarshalException</a></li>

      <li><a href="java.rmi.NoSuchObjectException.html">

         NoSuchObjectException</a></li>

      <li><a href="java.rmi.NotBoundException.html">

         NotBoundException</a></li>

      <li><a href="java.rmi.RemoteException.html">

         RemoteException</a></li>

      <li><a href="java.rmi.RMISecurityException.html">

         RMISecurityException</a></li>

 

         ServerError</a></li>

      <li><a href="java.rmi.ServerException.html">

         ServerException</a></li>

      <li><a href="java.rmi.ServerRuntimeException.html">

         ServerRuntimeException</a></li>

      <li><a href="java.rmi.StubNotFoundException.html">

         StubNotFoundException</a></li>

      <li><a href="java.rmi.UnexpectedException.html">

         UnexpectedException</a></li>

      <li><a href="java.rmi.UnknownHostException.html">

         UnknownHostException</a></li>

      <li><a href="java.rmi.UnmarshalException.html">

         UnmarshalException</a></li>

  </ul>


  圖 8 顯示了使用邊對邊列表生成的頂層選擇包導(dǎo)航級別。


圖 8. 像導(dǎo)航本機 iPhone 一樣導(dǎo)航 Javadoc 包
 

  圖 9 顯示了在 iPhone Preview 模式下顯示的最終的 java.rmi 包。


圖 9. 在 java.rmi 包中導(dǎo)航接口、類和異常
 

  對于 iDoc 的目標(biāo)詳細(xì)信息頁面,使用另一種 iPhone 構(gòu)造:圓角矩形列表。這些列表對于分組信息十分有用,并且 iPhone 中的設(shè)置面板都使用這種列表。使用圓角矩形列表可以分隔方法簽名與參數(shù)及異常清單。在 V0.13 中,iUi 只支持將圓角矩形列表用于表單輸入;將其元素用于靜態(tài)文本將生成格式錯誤的塊。 使用定制的 iDoc.css 文件擴展這些 CSS(如清單 2 所示),以添加用于顯示帶有靜態(tài)文本的圓角矩形列表的 textRow 元素。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉