1. 程式人生 > >從一個xib檔案中載入另一個xib檔案

從一個xib檔案中載入另一個xib檔案

在開發中,經常會用到一個需要重複使用的模組,比如好友列表中每個使用者的展示或每條動態,這些都是相同的模版,這樣我們就可以把這個部分提取出來放到一個單獨的.xib中。那麼提取出的.xib如何在其他.xib中使用呢?

接下來就說一下如何在.xib中載入其他的.xib。大概結構是這樣的:

建立專案,專案名稱叫CompositeXib

建立MainView和ChildView,ChildView將作為子View包含到MainView中。

 

建立完成後是這樣的:

設定ChildView的Size可以自定義,去掉狀態列:

 設定大小:

新增控制元件:一個ImageView,一個Label和一個Button,新增完成後你的View應該是這樣的:

新增ChildView.xib對應的Cocoa Class檔案:

.m 新增setup方法:

 .h 新增view屬性:

 連線此Cocoa Class和ChildView.xib:

 

這樣,一個子view已經準備好了。

在主.xib新增一個view控制元件並設定它的Class為上邊準備好的ChildView:

執行:

備註:將MainView.xib新增到storyboard的方法和將ChildView.xib新增到MainView.xib的方法類似,只需設定storyboard中目標View的Custom Class屬性為MainView即可。

相關推薦

一個xib檔案載入一個xib檔案

在開發中,經常會用到一個需要重複使用的模組,比如好友列表中每個使用者的展示或每條動態,這些都是相同的模版,這樣我們就可以把這個部分提取出來放到一個單獨的.xib中。那麼提取出的.xib如何在其他.xib中使用呢? 接下來就說一下如何在.xib中載入其他的.xib。大概結構是這樣的: 建立專案,專案名稱叫C

iOS-設定UITableViewCell之間的間距, xib載入一個xib

重新設定的UITableViewCellframe。 程式碼如下: #import "MyViewCell.h" @implementation MyViewCell - (void)awakeFromNib { [super

如何在一個js檔案引入一個js檔案

比如現在我們有兩個js檔案,1.js  和  2.js 我們現在要做的是將2.js 檔案中的程式碼引入到 1.js 檔案中 在1.js檔案中寫入如下程式碼 var script = document.createElement("script"); var hea

python檔案呼叫一個python檔案的類

如果是在同一個 module中(也就是同一個py 檔案裡),直接用就可以 如果在不同的module裡,例如 a.py裡有 class A: b.py 裡有 class B: 如果你要在class B裡用class A 需要在 b.py的開頭寫上 from a import A  

python 在一個py檔案呼叫一個資料夾下py檔案模組

假設現在的資料夾結構如下: -- src     |-- dir1     |    -- file1.py     |-- dir2     | 

c#裡用一個視窗載入一個視窗的方法

不囉嗦,直接上程式碼,主窗體用一個public_panel來放另一個窗體AntennaCheck(窗體名),放在任意的地方,可以用button觸發,也可以在載入主窗體的時候同時出現,有人或許會問,為什麼要增加一個窗體,懟他曰:程式碼號管理唄!            An

js檔案呼叫一個js檔案的函式

假設條件是:JS(A)要呼叫JS(B)的函式.那麼要滿足以下條件:1.要保證你所呼叫的JS必須在同一個頁面裡. 也就是JS(A)和JS(B)都要在頁面X裡.2.要保證你所呼叫的JS先於呼叫者本身被解釋.也就是JS(B)要先於JS(A)被解釋.反映在頁面上,就是JS(B)要寫

C語言學習筆記----伊能C語言學習筆記----如何在一個檔案使用一個檔案定義的變數呢??

 我們知道,一個大的程式,會由多個c檔案構成,這些c檔案是屬於同一個程式的。  那麼,如何在一個檔案中使用另一個檔案中定義的變數呢??      解答:    C語言為了解決這個問題:引出了    全域性作用域的概念  即:  在一個檔案中定義的全域性變數,具有全域性

js檔案引用一個js檔案

方法一,在呼叫檔案的頂部加入下例程式碼: document.write(”<script language=javascript src=’/js/import.js’></sc

如何在一個bat批處理檔案呼叫一個bat批處理檔案

我們有兩個批處理檔案outter和批處理檔案inner,其內容如下: outter.bat [plain] view plain copy  print? echo "start to call inner bat here"   inner.bat     

如何在一個線程結束一個線程

www. mtp oci mcs pve uda uwp xib 線程 湯e83PF賈約7R9http://t.docin.com/onzlf81506 qS57TV4遊95垢焉3http://jz.docin.com/sina_6341911313 1奧yS蒂徒OEU

一個JSP頁面包含一個JSP頁面的三種方式

(1)include指令           include指令告訴容器:複製被包含檔案彙總的所有內容,再把它貼上到這個檔案中。 <%@ include file="Header.jsp"%> (2)include標準動作 <jsp:includ

一個JSP頁面包含一個JSP頁面的三種方式。

(1)include指令          include指令告訴容器:複製被包含檔案彙總的所有內容,再把它貼上到這個檔案中。 <%@ include file="Header.jsp"%> (2)include標準動作 <jsp:include

C++學習筆記-----在一個建構函式呼叫一個建構函式

在建構函式中呼叫另一個建構函式如果一不注意就會有無限遞迴的危險,而且建構函式的引數的不同也決定了呼叫的不同,所以特意總結了一下哪些形式的呼叫時允許的: 首先假設建構函式呼叫時引數都是外部的變數,而不是一個常量。 第一種,也是C++11支援的一種呼叫方式。在函式的初始化列表中

C++如何在一個建構函式呼叫一個建構函式

http://blog.chinaunix.net/uid-23741326-id-3385581.html 在C++中,一個類的建構函式沒法直接呼叫另一個建構函式,比如: 點選(此處)摺疊或開啟 #ifndef _A_H_ #define _A_H_ #i

純JS實現在一個字串b查詢一個字串a出現的所有位置,並且不使用字串的方法(遞迴)

問題:判斷字串A在中所有出現字串B中(長度大於1)的索引。不得使用字串方法indexof,substring等     有小夥伴在面試遇到了這個問題,乍一看如果使用使用字串方法indexof,substring,很簡單容易實現,但如果不使用這些方法,怎麼樣才能實現這個需求呢    

在python程式呼叫一個py檔案

在同一個資料夾下 呼叫函式: A.py檔案:     def add(x,y): print('和為:%d'%(x+y)) B.py檔案:     import A A.add

安卓的資料共享——一個APP呼叫一個APP資料的方法

在Android中如何在一個APP中呼叫另一個APP中的資料呢?大致有以下五種方法可以實現 1、首選項資訊-Shared Preferences 2、檔案 3、SQLite 4、Content Provider 5、廣播 下來對上述的五種方法進行詳細的解析: 1、首先對

“操作無法完成因為其中的資料夾或檔案已在一個程式開啟”解決辦法

在windows系統中,我們經常會遇到這樣一個問題:刪除某一個檔案或者資料夾,被提醒:操作無法完成,因為其中的資料夾或檔案已在另一個程式中開啟。 這個時候我們一般會先檢查是否真的有程式或者檔案打開了沒有關閉,但是我們在桌面或者工作管理員中找不到該程式。這個問題困擾了我很久,認為下次重啟

【Android Studio】將一個Module直接複製到一個Project需要改動哪些檔案

一個奇怪的需求,硬拷貝 根目錄/settings.gradle include ':app' include ':ThirdPartyDemo' // 按照樣式新增本行  這樣在【Run/Debug Configurations】中就會有該Module