Objective c 如何加载UIView子视图
我试图使用一个好看的控件,但无法理解a)如何加载数据和b)如何将此控件转换为故事板 控件是 我加载子视图标题的代码运行良好Objective c 如何加载UIView子视图,objective-c,cocoa-touch,uiview,ios7,Objective C,Cocoa Touch,Uiview,Ios7,我试图使用一个好看的控件,但无法理解a)如何加载数据和b)如何将此控件转换为故事板 控件是 我加载子视图标题的代码运行良好 -(NSString *)titleForCollapseClickAtIndex:(int)index { //NSLog(@"%s", __FUNCTION__); switch (index) { case 0: return @"Item Information"; break;
-(NSString *)titleForCollapseClickAtIndex:(int)index {
//NSLog(@"%s", __FUNCTION__);
switch (index) {
case 0:
return @"Item Information";
break;
case 1:
我不知道如何加载下一个方法:
-(UIView *)viewForCollapseClickContentViewAtIndex:(int)index {
NSLog(@"%s", __FUNCTION__);
switch (index) {
case 0:
return itemView;
break;
(UIView*)项目视图(初始化后)为:
视图以IB格式绘制,并且与这些项目有连接。UIView也绘制在主xib中。它在演示中显示,标题来自ItemView类
正如我提到的,标题是从视图控制器继承的。文本(例如:@
试试这个,不要
如果尝试在“viewForCollapseClickContentViewAtIndex”方法中记录文本字段,则会出现运行时异常:
2014-01-17 07:54:44.856 CollapseClickDemo[29037:70b] -[UIView item]: unrecognized selector sent to instance 0x8c84590
2014-01-17 07:54:44.858 CollapseClickDemo[29037:70b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIView item]: unrecognized selector sent to instance 0x8c84590'
*** First throw call stack:
(
0 CoreFoundation 0x024531e4 __exceptionPreprocess + 180
1 libobjc.A.dylib 0x015808e5 objc_exception_throw + 44
2 CoreFoundation 0x024f0243 -[NSObject(NSObject) doesNotRecognizeSelector:] + 275
3 CoreFoundation 0x0244350b ___forwarding___ + 1019
4 CoreFoundation 0x024430ee _CF_forwarding_prep_0 + 14
5 CollapseClickDemo 0x000034b8 -[ViewController viewForCollapseClickContentViewAtIndex:] + 152
6 CollapseClickDemo 0x0000ca89 -[CollapseClick reloadCollapseClick] + 1561
[self.item setText:@“试试这个”];
这就是异常的原因。self
(似乎是您的控件)没有item
属性。self.item
相当于[self-item]
,并且由于没有名为item
的方法,因此会出现无法识别的选择器异常
一旦你让它工作起来,你可以将它添加到情节提要中,方法是向情节提要中添加一个滚动视图(因为你的小部件是UIScrollView的子类),然后将其类更改为
CollapseClick
。好吧,目前还没有一种方法可以将用户定义的类添加到情节提要编辑器支持的类列表中。什么是“运行?发布任何相关的控制台输出/错误输出。感谢编辑。我已经编辑了问题(最后一句),并添加了一个日志输出caleb,我很困惑。我原以为ItemView类会返回一个名为ItemView的UIView,而ItemView只包含一些文本字段。我是不是想错了?哦,但感谢您提供在情节提要中为UIView使用UIScrollviews的技巧。@Davidelmonte这很难从您的Q类中理解该-loadView
方法属于哪个类,但无论它是什么类,它似乎都没有项
属性。请查看您收到的错误消息:原因:'-[UIView项]:无法识别的选择器已发送到实例0x8c84590。您正在以某种方式将消息-item
发送到普通旧UIView的实例,并且由于UIView没有-item
方法,因此会出现异常。好的。再次..我有一个UIView实例。它包含文本字段。当我填充字段,然后记录视图时,它会按预期包含文本字段。但是,当我在视图控制器中加载视图时,文本字段不在其中。因此我得到了异常。我无法找出我缺少的内容。。
2014-01-17 07:54:44.856 CollapseClickDemo[29037:70b] -[UIView item]: unrecognized selector sent to instance 0x8c84590
2014-01-17 07:54:44.858 CollapseClickDemo[29037:70b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIView item]: unrecognized selector sent to instance 0x8c84590'
*** First throw call stack:
(
0 CoreFoundation 0x024531e4 __exceptionPreprocess + 180
1 libobjc.A.dylib 0x015808e5 objc_exception_throw + 44
2 CoreFoundation 0x024f0243 -[NSObject(NSObject) doesNotRecognizeSelector:] + 275
3 CoreFoundation 0x0244350b ___forwarding___ + 1019
4 CoreFoundation 0x024430ee _CF_forwarding_prep_0 + 14
5 CollapseClickDemo 0x000034b8 -[ViewController viewForCollapseClickContentViewAtIndex:] + 152
6 CollapseClickDemo 0x0000ca89 -[CollapseClick reloadCollapseClick] + 1561