[英]Adding a subview without a XIB
這看起來很簡單,但是我剛開始,所以請耐心等待...
我有一個帶有工具欄的主視圖。 當用戶按下工具欄上的按鈕時,我希望在屏幕頂部出現一個小的提示。 我在現有的UIView中添加了一個UIView,並將其設置為隱藏。 我在視圖控制器中將其連接到名為“ searchView”的ivar,並嘗試了以下操作:
searchView.hidden = NO;
如果沒有用,我嘗試添加...
[self.view addSubview:self.searchView];
...也不起作用。
我是否需要以某種方式設置索引以使其高於主視圖?
這種方法是完全錯誤的嗎?
如果您是從界面構建器創建的UIView,請不要使用addSubview,因為界面構建器會自動執行此操作。
要在圖形模式(IB)中執行此操作,請按照下列步驟操作:
在文件“ h”中定義IBOutlet應該類似於:
IBOutlet UIView * myHiddenView;
然后,在IB中,將您在h文件中定義的IBOutlet連接到在IB中以圖形方式創建的UIView,並將hidden屬性賦予該UIView(復選框)。
然后在您的按鈕按下方法中執行以下操作:
myHiddenView.hidden = NO;
如果您願意,可以通過編程方式復制以下示例代碼:
在.h文件的界面中定義
UIView *myHiddenView;
.h文件中的接口之后:
-(void)displayView:(id)sender;
然后在.m文件中:
-(void)viewDidLoad{
myHiddenView = [[UIView alloc] initWithFrame: CGRectMake (x, y, width, height)];
myHiddenView.hidden = YES;
[self.view addSubview: myHiddenView]
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(x, y, width, height)];
[button setTitle:@"button" forState:(UIControlState)normal];
[button addTarget: self action: @selector(displayView:) forControlEvents: UIControlEventTouchUpInside];
[self.view addSubview:button];
}
-(void)displayView:(id)sender{
myHiddenView.hidden = NO;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.