iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了xcode – 如何将IBOutlet连接到UIView?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我正试图在看到动画后切换视图: [UIView beginAnimations: @"Fade Out" context:nil]; [UIView setAnimationDelay:1.0]; [UIView setAnimationDuration:0.25]; splash.alpha = 0.0; [UIView commitAnimations]; [self.view addSubv
@H_404_0@
@H_404_0@
我正试图在看到动画后切换视图:

[UIView beginAnimations: @"Fade Out" context:nil];
[UIView setAnimationDelay:1.0];
[UIView setAnimationDuration:0.25];
splash.alpha = 0.0;
[UIView commitAnimations];
[self.view addSubview : view];

在[self.view addSubview:view];我必须为视图添加一个名称才能添加,所以我创建了一个像这样的IBOutlet :(在第一个视图控制器的.h文件中)

IBOutlet UIView *main;

但是当我尝试将*主UIView连接到故事板上的视图时,它不会让我…
非常感谢你们.

解决方法

您的困惑之处在于在代码中创建UI对象与使用Interface Builder / storyboard以图形方式创建它们之间.

一个线索是您使用预处理器提示’IBOutlet’. IB用于Interface Builder ==图形创建(使用storyboard或xib文件).

如果在故事板中创建……

>正如您所做的那样创建一个IBOutlet属性,尽管语法完全正确
  @property(非原子,弱)IBOutlet UIView * main;
>将“自定义视图”视图从对象库拖到故事板场景.
> CTRL-从视图拖动到viewController.您应该看到要连接的合适项目列表.您的IBOutlet应该在列表中.选择它.

IBOutlet的全部目的是为您提供对故事板场景中可以在代码中使用的项目的引用.

你不需要这样做:

[self.view addSubview : view];

因为它已经创建并添加到您的故事板中.确保它在您的视图层次结构中按预期定位.

如果在代码中创建……

在@interface中声明一个属性

@property (nonatomic,strong) UIView *main;

(不需要IBOutlet,因为您没有在故事板中链接它.如果您没有立即将其分配给视图层次结构,则声明为“强”而不是“弱”).

添加此行之前

[self.view addSubview : view];

您需要虑:您是否添加了storyboard / xib中不存在的新视图?如果是这样,则在创建之前无法添加它. (在故事板场景中添加IS在您的故事板中的视图没有意义,因为它已经存在).

所以 – 当您在代码中执行此操作时 – 您需要在添加视图之前创建视图.

UIView* myView = [[UIView alloc] init];

设置它的frame属性,以便我们知道将它添加到视图层次结构时它将出现在何处

@H_449_19@myView.frame = CGRectMake (CGFloat x,CGFloat y,CGFloat width,CGFloat height);

将新创建的视图分配给属性

self.main = myView;

将其添加到视图层次结构中

[self.view addSubview : myView];

现在,您可以使用self.main在代码中引用它.这就像你在IB / storyboard中添加它并将CRTL拖动到你的IBOutlet的参链接一样.

如果要在代码中创建视图并立即将其添加到视图层次结构中,则声明属性的替代方法是在视图上设置(数字)标记属性,然后可以使用它的superview的viewWithTag:方法引用视图

您不能做的一件事是在代码中创建视图,然后使用故事板对其进行操作.

我希望这一切都很有用,我担心我可能会让你更加困惑!

大佬总结

以上是大佬教程为你收集整理的xcode – 如何将IBOutlet连接到UIView?全部内容,希望文章能够帮你解决xcode – 如何将IBOutlet连接到UIView?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。