Iphone 以编程方式设置引用出口
我有一个有三行的视图,并希望以编程方式为它们设置引用出口-这是如何做到的Iphone 以编程方式设置引用出口,iphone,ios,Iphone,Ios,我有一个有三行的视图,并希望以编程方式为它们设置引用出口-这是如何做到的 (any pointer) = [[self.view subviews] objectAtIndex:(object's index)]; 不确定对象的ID。请尝试在interface builder的identity inspector中查找IBOutlet,它只是一个标记,以便interface builder知道哪些实例变量将从NIB分配给对象。谈论自动分配门店是没有意义的——它们的全部目的是为了相反的方法。IB
(any pointer) = [[self.view subviews] objectAtIndex:(object's index)];
不确定对象的ID。请尝试在interface builder的identity inspector中查找IBOutlet,它只是一个标记,以便interface builder知道哪些实例变量将从NIB分配给对象。谈论自动分配门店是没有意义的——它们的全部目的是为了相反的方法。
IB
代表接口生成器
如果要将nib中的对象分配给实例变量,则需要跨越视图层次结构,并有一些方法来标识要收集的对象
通过访问视图控制器中的self.view
,可以跨过视图层次结构。如果nib中的对象不是主视图的子视图,您将无法访问它们。您可以使用UINib
加载nib,而不是依赖内置功能来获取这些对象
您可以根据需要以多种不同的方式识别对象。可以在Interface Builder中将整数指定给视图的标记
属性。您可以查看您知道将位于层次结构中某个点的视图。您可以查看特定类型的视图。或者您可以混合和匹配-例如,主视图的UIButton
子类带有偶数标记
如果您使用Interface Builder布置视图,那么使用Interface Builder将视图分配给插座几乎总是最简单的方法。如果您希望一个视图的表视图单元格从左到右排序,可以执行以下操作
NSMutableArray *myCells = [[NSMutableArray alloc] initWithCapacity:NUMBER_OF_CELLS];
NSArray *allSubviews = [theView subviews];
for(NSView *aSub in allSubviews) {
if([aSub isKindOfClass:[MyCustomCellViewClass class]]) {
[myCells addObject:aSub];
}
}
// Here you can sort your found cells with their origin's x values.
// -[NSMutableArray sortUsingFunction:context:] can help you with that.
// Do what you want to do
[myCells release];
“三排”是什么意思?这些行是否有固定的类(
UIScrollView
,UITextField
,等等)?是的,它们都是自定义uitableviewcells,CellWithTextField类技术上不正确。。。在-viewDidLoad
中,可以循环查看视图的子视图,并将局部变量指定给所需的变量(由类或它们包含的某些属性指定)。