Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/98.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 自定义视图和属性';v';实例变量_Ios_Uiview_Properties_Instance Variables - Fatal编程技术网

Ios 自定义视图和属性';v';实例变量

Ios 自定义视图和属性';v';实例变量,ios,uiview,properties,instance-variables,Ios,Uiview,Properties,Instance Variables,我想检查一下,我创建自定义视图的方式没有给自己带来任何问题,自定义视图是UIVIEW的一个子类,我正在添加一个UISlider作为子视图 我的理解是,属性是公共对象,在.h中使用@roperty定义,实例变量等在.m文件中定义。基于这种简单化的逻辑,我定义UISlider correct/good的方式是正确的,它工作正常,感觉正确,但这会导致内存问题吗?这是正确的做法吗?我在.h文件中没有定义任何内容,在.m文件中没有定义以下内容 #import "myWidgetView.h" @impl

我想检查一下,我创建自定义视图的方式没有给自己带来任何问题,自定义视图是UIVIEW的一个子类,我正在添加一个UISlider作为子视图

我的理解是,属性是公共对象,在.h中使用@roperty定义,实例变量等在.m文件中定义。基于这种简单化的逻辑,我定义UISlider correct/good的方式是正确的,它工作正常,感觉正确,但这会导致内存问题吗?这是正确的做法吗?我在.h文件中没有定义任何内容,在.m文件中没有定义以下内容

#import "myWidgetView.h"

@implementation myWidgetView {
    UISlider        *eraseSlider;
}


- (id)initWithCoder:(NSCoder *)aDecoder {

    if (self = [super initWithCoder:aDecoder])
    {
        eraseSlider = [[UISlider alloc] init];
        [self addSubview:eraseSlider];
    }
    return self;
}

房产不仅是公共的,你也可以拥有私人的。它们的用法有点个人偏好。就我个人而言,我不使用任何简单的实例变量,我使用所有属性。我知道其他人的工作方式不同

实例变量不仅仅是私有的。Public/private实际上由.h/.m文件中的内容控制。属性和实例变量都可以在这两种语言中定义

属性的好处在于,它们描述了您在内存、线程管理和访问控制方面的意图。普通实例变量不会告诉您任何信息。属性还根据您声明的意图生成访问器方法

你所拥有的(作为一个非常简单的例子)很好。只需了解您正在使用的每个构造所提供的特性,并决定如何构造类