分段控件与“关联”

1、什么是分段控件?
所谓的分段控件就是在界面上出现的一段有明显不同于其他控件的具有3段或多段不同按钮的控件,当我们单击某一按钮,实际上我们也只能是激活某一按钮,而激活按钮之后会导致用户在屏幕上看到的内容发生变化。
2、分段控件有什么作用?
它经常用于在不同类别的信息之间选择,或在不同的应用屏幕之间的切换,也就是说在平时我们需要做大量工作的切换用分段控件就可以完成。
3、分段控件的应用?

    UISegmentedControl *control = [[UISegmentedControl alloc] initWithItems:@[@"示例1", @"示例2", @"示例3"]];
    control.tintColor = [UIColor orangeColor];
    control.frame = self.view.bounds;
    // autoresizingMask 这是一个重点,是一定程度上的屏幕适配
    control.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
    control.selectedSegmentIndex = 0;
    [control addTarget:self action:@selector(contorlSelect:) forControlEvents:UIControlEventValueChanged];
    [self.view addSubview:control];

4、关联是什么?
关联是指把两个对象相互关联起来,使得其中的一个对象作为另一个对象的一部分。
5、关联有什么作用?
使用关联,我们可以不用修改类的定义而为其对象增加存储空间。这在我们无法访问到类的源码的时候或者是考虑到二进制兼容性的时候是非常有用。
关联是基于关键字的,因为,我们可以为任何对象增加任意多的关联,每个都使用不同的关键字即可。关联是可以保证被关联的对象在关联对象的整个生命周期内都是可用的。
6、关联的应用

static char overviewKey;  
NSArray * array =[[NSArray alloc] initWidthObjects:@"One", @"Two", @"Three", nil];  
//为了演示的目的,这里使用initWithFormat:来确保字符串可以被销毁  
NSString * overview = [[NSString alloc] initWithFormat:@"@",@"First three numbers"];  
objc_setAssociatedObject(array, &overviewKey, overview, OBJC_ASSOCIATION_RETAIN);  
  
[overview release];  
//(1) overview仍然是可用的  
  
[array release];  
//(2)overview 不可用  

关联的基本知识是参考了博客:
http://blog.csdn.net/onlyou930/article/details/9299169

你可能感兴趣的:(分段控件与“关联”)