UIViewController* viewController = [[NSClassFromString([_viewControllerArrayobjectAtIndex:indexPath.row])alloc]init];
官方许多方法 命名都是有规律可循,有时想实现某个功能,还需要自己去构造方法,调用方法,此时如果知道官方已经有此方法,那就事半功倍了,那怎么知道有没有这个方法呢,关键是方法名能不能找对,首先官方方法都是以你的目的属性开头,例如你想对图片进行操作,那么方法名的开头一般都是image,如果你得到的最后的东西是字符串,那十有八九你需要用个的方法就是NSString开头,剩下的就简单了 Xcode的提示功能 会让你从浩如烟海的方法名集合中找到你需要的方法。
当然 许多东西都是相通的,方法名许多都是类似的,关键是要缩小提示范围,这就需要平时的积累,或者是用苹果的思想去解析可能的方法。
下面举几个例子:
我们平时做大量的数据处理,归根结底就是对字符串的操作,例如想打印出来某个View的frame,可能会想到用这种方法:
NSLog(@"%f,%f,%f,%f",view.frame.origin.x,view.frame.origin.y,view.frame.size.width,view.frame.size.height);
如果用这种方法 那就out了,苹果早就想到直接将CGrect类型转为字符串了,
NSStringFromCGRect
一下就搞定了
或者有时我们得到一个类的类名字符串 想通过这个字符串来调用类方法 要如何做呢,许多童鞋可能去想当然去转化为类 然后去构造方法。。。
你又out了,苹果也早就有方法直接将类名转为类了
NSClassFromString()
又是一行代码搞定了.