xcode江湖錄 第04章 風水寶地 介面生成器

2021-07-13 19:53:33 字數 1708 閱讀 4344

第04章風水寶地--介面生成器

4.1 簡介

xcode 6中,有三種製作ui的方式:使用**構建ui及布局、使用xib檔案構建ui、使用storyboard來構建ui。

使用**有利於多人合作和重用。

使用storyboard可以將多個xib統一管理,但如果使多人修改,可能會產生衝突。

4.2 介面生成器

4.2.1 畫布 canvas

對於storyboard檔案來說,物件視窗內部顯示的是一系列場景,每個場景對應乙個高階物件檢視。高階物件檢視中的專案從左到右依次是:檢視控制器view controller、first responder、場景的退出segue(exit)

4.2.2 storyboard的物件視窗

上面第乙個頂級目錄中有storyboard entry point一項,表明這個場景是入口點。

4.2.3 檢查器

在檢查器中,我們可以方便地檢視和編輯介面空間和物件的屬性。一般而言,介面生成器的檢查器都包含了以下幾個檢查器:

1:檔案檢查器(file inspector);

2:快速幫助檢查器(quick help inspector);

3:標識檢查器(identity inspector)

4:屬性檢查器:attribute inspector;

5:尺寸檢查器,ios中統一使用點(point)對介面元素進行描述。對於普通螢幕,1點 = 1畫素;retina屏,1點=2畫素;

6:連線檢查器 connections inspector:主要定義連線口的相關設定;

4.3 xib檔案

使用xib進行ios應用的介面管理時,使用ib(inte***ce builder)只能對每個介面進行單獨管理,它的好處在於所有即所得。

xib出現的目的是為了更好地讓檢視和控制器分離,因為一般來說,單獨的xib對應乙個檢視控制器。

xib是使用xml來實現的。可以用文字應用開啟xib檔案。對於xib檔案來說,其和純**的版本管理上已經沒有太大的差異了。

盡量將xib的工作和**隔離開來,能夠使用xib完成的工作就交給xib來完成,而不要東一腳西一腳,這樣很可能導致ui顯示結果不在你的預料之中。

4.4 故事板

storyboard可以在乙個視窗中管理多個場景(scene),方便開發者清理各個場景之間的邏輯關係。

storyboard的麻煩之處在於,多人協作時。由於幾乎所有的介面都放在同乙個文件中,這樣會導致合併(merge)的時候會出現過多的錯誤。

解決這個問題的方法是將專案的不同部分分解成若干個storyboard.storyboard更重視場景的層次,而不是單個檢視的高階功能,因此對於自定義檢視的處理也不太好。

4.4.1 新增新的場景

4.4.2 設定初始場景

初始場景是這個storyboard被啟動時首先顯示的介面,也就是程式的ui入口。要修改初始場景,拖動畫布的「起始標籤」到新的頁面即可。如果找不到「起始標籤」,選中你要設定為初始場景的viewcontroller,開啟屬性檢查器,勾選「is initial view controller」即可。

4.4.3 新增頁面間的轉場

1)按住control鍵將乙個控制項拖動到另外乙個場景。

2)在彈出的選單中選擇segue的方式。

3)選中剛生成的segue。

4)開啟工具區域的「標識檢查器」(identity inspector)。

5)輸入segue的標識字段,將其命名為「gamestartsegue」。

第04章 過濾選擇器(下)

index.html 我們的網域名稱為 訪問 我們的網域名稱為 我是標題 demo.js function 注意,必須使用 this 來表示要判斷的元素,否則,不管 function 裡面是否返回 true 或 false 都和呼叫的元素無關了 alert li eq 2 hasclass red ...

第04章 交付使用者想要的軟體

沒有任何計畫在遇敵後還能繼續執行。helmuth von moltke 德國陸軍元帥,1848 1916 helmuth von moltke曾說過 沒有任何計畫在遇敵後還能繼續執行。我們的敵人不是客戶,不是使用者,不是隊友,也不是管理者。真正的敵人是變化。軟體開發如戰爭,形勢的變化快速而又劇烈。固...

《OOD啟思錄》 第1章1 4節迭代模型

1.4 迭代模型 ood啟思錄 軟體開發的迭代模型看上去和瀑布模型差不多,區別只在於迭代模型允許開發者沿專案流程往返 見圖1.2 如果我們在為系統的某個部分編寫 時發現了乙個設計缺陷,我們可以回到設計階段來分析並改正它。或者,如果我們在測試系統的一部分時發現了新的系統需求,我們可以回到分析階段來修正...