草庐IT

self-reference

全部标签

objective-c - 了解 'self' 并将 self 设置为 super

我一直在关注许多教程,但我对自己感到失望。有人可以帮忙吗?我有下面的init,它是一个实例方法。-(id)initWithScore:(int)s{self=[superinit];if(self){score=s;}returnself;}现在通读代码,我将self设置为superinit,因此self现在指向super。然后我检查自己是否有效并将分数设置为等于我在InitWIthScore上发送的值。到目前为止我已经知道了。但现在我返回指向父类(superclass)的self,那么我如何返回我的子类?因此,假设有人调用我的类传入100,我的代码返回的是super而不是类,那么它是

iphone - 添加目标 :self versus addTarget:nil

我是iOS开发新手。当我以编程方式添加按钮时,我有点困惑。当我们将目标分配给按钮时,如下所示:[buttonaddTarget:selfaction:@selector(CallMe)forControlEvents:UIControlEventTouchUpInside];和[buttonaddTarget:nilaction:@selector(CallMe)forControlEvents:UIControlEventTouchUpInside];这两种情况都是调用CallMe方法。谁能给我解释一下这两行代码之间的实际区别是什么。如果有人能专门解释一下addTarget的工作原理

ios - 可以[self.window makeKeyAndVisible];在设置 rootviewcontroller 之前被调用

我的要求是UITabBarController是rootviewcontroller,在第一次启动应用程序时,我想显示UINavCon内的登录过程,我通过presentViewController显示它。我不希望UITabBarController第一次可见,也不希望登录UINavCon以模态方式弹出。我想让用户体验到,如果应用程序首次启动,登录UINavCon应该是可见的。所以这是我的代码:-(BOOL)application:(UIApplication*)applicationdidFinishLaunchingWithOptions:(NSDictionary*)launchO

ios - swift 3.0 : Ambiguous reference to member 'Subscript' issue in push notification

这是下面的代码,但我在swift3中收到以下错误funcapplication(_application:UIApplication,didReceiveRemoteNotificationuserInfo:[AnyHashable:Any],fetchCompletionHandlercompletionHandler:@escaping(UIBackgroundFetchResult)->Void){notificationReceived(notification:userInfoas[NSObject:AnyObject])}funcnotificationReceived(n

ios - 由于弃用而替换 self->isa

我刚刚安装了Xcode4.6,现在我管理的一个古老代码中出现了新错误。编译器提示“直接访问objective-c的isa被弃用,取而代之的是object_setClass()和object_getClass()”,项目将无法构建。所以请告诉我,是:object_setClass(self,[CustomClassclass]);适当的替换:self->isa=[CustomClassclass];谢谢! 最佳答案 访问isa已经被弃用一段时间了,工具只是没有告诉你这个。值得注意的是,至少只要标记指针存在于obj-c中,它就已被弃用。

ios - Xcode 7 ibtool 错误 : Deploying Storyboard References to iOS 8. 0 要求您的 Storyboard不共享任何 View Controller 标识符

我有一个针对iOS8和9的iOS应用程序,我正在升级它以使用StoryboardReferences而不是通过代码链接。我逐渐转换了越来越多的位,突然间我开始收到这个编译器错误::error:DeployingStoryboardReferencestoiOS8.0requiresthatyourstoryboardsdonotshareanyviewcontrolleridentifiers.A.storyboardandZ.storyboardbothcontainaviewcontrollerwithidentifier"ZNavigationController".Z.stor

ios - 使用 [self.view.layer removeAllAnimations] 后,下一个动画不工作

问题是当我使用:[transLabel.layerremoveAllAnimations];(transLabel是一个显示信息的UILabel)之后,我尝试为这个Label添加一个新的动画[UIViewanimateWithDuration:showTimeanimations:^{transLabel.hidden=NO;transLabel.transform=CGAffineTransformMakeScale(1.5,1.5);}completion:^(BOOLfinished){transLabel.hidden=YES;transLabel.transform=CGAf

ios - 为什么 self.view.subviews 在 vi​​ewDidLoad 中是一个空数组?

我使用InterfaceBuilder创建了一堆UI元素,并使用IBOutlets将它们连接到我的ViewController。但是,当我尝试在我的ViewController的viewDidLoad方法中遍历self.view.subviews时,我发现subviews数组是空的。ViewController.xib:UIView|-UILabel-UIButton-//...morestuff-UIToolbarViewController.m:#import"ViewController.h"@interfaceViewController()//Interfaceelement

ios - 核心数据唯一约束 - 保存时为 "Dangling reference to an invalid object"

我将在新模型版本中向现有应用引入唯一约束。该模型具有实体Person,它与实体Pet具有可选的一对一关系。Person的删除规则是cascade,Pet的逆关系删除规则是nullify。还有另一个实体Job,它与Person也有一对一的关系。但是那个删除规则,和逆删除规则,都是无效的。Person有一个“personID”属性,我已将其设为唯一。在主队列上下文中,我有一个Person的实例,ID为xxx,没有设置Pet。让我们称那个人为“查理”。我也创建了一个Job,并将其设置为“iOSDev”,并将其分配给Charlie的工作属性。然后在子私有(private)队列上下文中,我插入一

iOS:self.view.bounds 没有填满整个窗口

我正在做一些将CALayer添加到UIView的简单测试。在我的iPhone4应用程序的主Controller类中,我实现了viewDidLoad方法:-(void)viewDidLoad{[superviewDidLoad];NSLog(@"%s",__PRETTY_FUNCTION__);CALayer*ca=[[CALayeralloc]init];[casetBounds:self.view.bounds];[casetBackgroundColor:[[UIColorblueColor]CGColor]];[self.view.layeraddSublayer:ca];}蓝色