ios-新人请教OC中self用法

问题描述

新人请教OC中self用法

新人小白,求教下面的获取文本框、标签的文本属性为什么都要用self.num1.text,self.resultLabel.text, 不能直接用num1.text,resultLabel.text???

#import "HMViewController.h"

@interface HMViewController ()
@property (nonatomic, weak) IBOutlet UITextField *num1;
@property (nonatomic, weak) IBOutlet UITextField *num2;
@property (nonatomic, weak) IBOutlet UILabel *resultLabel;

@end

@implementation HMViewController

  • (IBAction)compute
    {
    NSString *num1 = self.num1.text;
    NSString *num2 = self.num2.text;

    int result = num1.intValue + num2.intValue;

    self.resultLabel.text = [NSString stringWithFormat:@"%d", result];

    [self.view endEditing:YES];
    }

@end

解决方案

可以用 _ num1.text 来读取
用 self.num 会自动调用 get 方法

解决方案二:

http://blog.csdn.net/hahahacff/article/details/39586451

解决方案三:

可以把self理解成是一个指针自己的对象,类似C++中的this,表示自己

解决方案四:

不通过self 是直接访问属性,通过self 是调用了系统默认添加的 setter方法

解决方案五:

self 就是指你当前所在对象,self.就是当前对象 的 某些属性, 可以把 点 理解为 的

时间: 2024-10-03 07:32:28

ios-新人请教OC中self用法的相关文章

新人请教一个sscanf中的正则表达式的问题

问题描述 新人请教一个sscanf中的正则表达式的问题 比如一串字符我要取其中的数字,df3600sdf365dssdfwef2135fewe@35@#%dsaf54我用""%*[^0-9]%[0-9]""只能取到3600,""%*[^0-9]""也错误..应该怎么取啊 解决方案 正则 直接用 d+ 即可 解决方案二: 这个应该怎么写..求写法

请教一下,jq中each用法的问题

问题描述 请教一下,jq中each用法的问题 $('[data-spy="scroll"]').each(function () { var $spy = $(this).scrollspy('refresh'); console.info($(this)[0]); }); 想请教下上面这串代码是否可以写成下面,已经试验过效果一样: $.each($('[data-spy="scroll"]'), function(i,val){ var $spy = $(val)

iOS中UIImageView用法总结

iOS中UIImageView用法总结 - (instancetype)initWithImage:(UIImage *)image; 通过一个图片UIImage对象进行初始化 - (instancetype)initWithImage:(UIImage *)image highlightedImage:(UIImage *)highlightedImage; 通过一个正常状态下的图片和高亮状态下的图片初始化对象 @property(nonatomic,retain) UIImage *imag

iOS开发几年了,你清楚OC中的这些东西么!!!?

前言 几年前笔者是使用Objective-C进行iOS开发, 不过在两年前Apple发布swift的时候,就开始了swift的学习, 在swift1.2发布后就正式并且一直都使用了swift进行iOS的开发了, 之后就是对swift持续不断的学习, 近来swift3.0的发布, 更多的人会选择swift来进行iOS的开发看上去更是成为了一种趋势, 不过一个合格的iOS开发者对oc以及c语言的掌握是必不可少的技能, 本篇中主要是写一些大家平时都可能用到但是不一定知道的oc的东西 oc中的对象的创建

【iOS】在Swift中使用JSONModel

这里不讨论JSONModel和Alamofire这两个项目,直接上代码 BaseModel.h #import "JSONModel.h" @interface BaseModel : JSONModel -(instancetype)initWithDictionary:(NSDictionary*)dict; @end BaseModel.m  #import "BaseModel.h" @implementation BaseModel //Make all 

设计模式之观察者模式(关于OC中的KVO\KVC\NSNotification)

学习了这么久的设计模式方面的知识,最大的感触就是,设计模式不能脱离语言特性.近段时间所看的两本书籍,<大话设计模式>里面的代码是C#写的,有一些设计模式实现起来也是采用了C#的语言特性(C#的API,抽象类,在OC中是没有抽象类.没有多继承关系),<设计模式之禅>里面的代码是JAVA写的,与OC差距也是比较大. 但是我想,这些都不是问题,学习设计模式主要学习的是其中的思想,并将之改造成自己所熟悉语言的模式,大同小异.所需要注意的是,在学习的过程中,将之与语言结合起来,多思考.多实践

字符串 记录 存储- oc中字符串存储的问题 在线等

问题描述 oc中字符串存储的问题 在线等 (IBAction)tapButton:(id)sender { NSString *title=[sender titleForState:UIControlStateNormal]; self.label.text=title; } 我想做一个计算器,然后用这个方法获取了btoon 上的字符串,但是点击第二次,第三次的时候之前获取的字符串呗覆盖了,这个问题怎么解决?? 解决方案 可以考虑用个数组或者List把每次都记录下来 解决方案二: 具体怎么实现

棕色在设计中的用法

上一篇我们讨论了一下紫色,一个十分鲜明的色彩.今天,我们将讨论棕色(棕色也被称为褐色.赭色等).就寓意来说,在某些方面棕色差不多是与紫色相反的色彩.棕色常常被联想到泥土.自然.简朴.它给人可靠.有益健康和保守的感觉.反面来说,它也被认为有些不鲜明,但是可以通过使用较亮的色彩来弥补这种情况. 棕色与木材以及小范围的石头有非常亲密的联系.几年前,有很多很多网站使用木质纹理做背景.这个趋势貌似已经结束了,但是如果处理的好,"木质"网站还是很醒目的而且可以给人一种很棒的有纹理的感觉.当然,棕色

浅析 Transformer Stage 在 DataStage 作业中的用法及功能实现

产品背景介绍 IBM InfoSphere DataStage 是业界主流的 ETL(Extract, Transform, Load) 工具,它使用了 Client-Server 架构,在服务器端存储所有的项目和元数据,并支持在多重数据结构中对大量数据进行收集.整合和转换.客户端 DataStage Designer 为整个 ETL 过程提供了一个图形化的开发环境,用户在 Designer 中对 DataStage Job 的进行设计和开发.DataStage 中提供了多个过程处理 Stage