2013-04-08 62 views
-3

我想創建一些控件以通過代碼使用,這樣我就不會在任何地方重複代碼。 我的意思是,我需要創建自定義的控制和viewcontrollers內使用在應用程序中使用的常見UI控件

例如:

  • 的UITextField,顯示內部
  • 的UITextField在觸摸日期選擇器彈出與搜索鍵

任何想法如何做到這一點

回答

1

如果你打算在你的應用程序中經常使用這樣的控件,你可以做一個輔助類用類和實例方法來繪製你需要的控件,並在你調用方法時返回它。

#import <Foundation/Foundation.h> 

@interface CustomControls : NSObject 
//declare your methods 


@end 
+0

所以,如果我需要創建uitexfield自定義,我會創建一個方法返回它,對吧?!但是我有一個表單,包含已經uitextfield – AMH 2013-04-08 00:53:17

+0

您可以創建一個'xib'文件並在您的代碼中隨時調用它。所以你做了一次,並多次使用它;) – Malloc 2013-04-08 00:54:50

1

的UITextField與搜索鍵

這是一個很好的例子開始。我會反覆加載一個nib文件來解決這類問題。每當你這樣做時,你都會得到一份新內容。

創建一個包含視圖的新接口文件(.xib)。使視圖不可見(背景顏色=清除顏色)。把你的文本框和搜索按鈕放入它。現在,您每次加載.xib文件時,都會看到一個無人能看到的視圖(包含在.xib中的視圖),其中包含文本框和搜索按鈕,它們可以可以看到。

當我說「加載的.xib文件」我說的是這樣的事情:

NSArray* objs = [[NSBundle mainBundle] loadNibNamed:@"MyNib" owner:self options:nil]; 

現在objs[0]是從筆尖的一個頂級的UIView的副本!現在你可以使用addSubview:或其他任何東西將UIView粘貼到你的界面中。

+0

以及如何將它插入到我的新xib中,我的意思是在代碼中有許多uitexfields – AMH 2013-04-08 00:54:39

+0

,您將加載xib並插入該不可見視圖(包含textfield-and-搜索按鈕)到你需要的地方。 – matt 2013-04-08 00:57:08

+0

好吧我創建了一個viewcontroller與所有的代碼來做到這一點,如何可以在設計時將其添加到另一個xib,對於天真的問題抱歉 – AMH 2013-04-08 01:20:09

相關問題