jjzjj

NSClassFromString

全部标签

iphone - 在 Objective-C 中动态实例化类,可能吗?

我的问题如下。我有一个方法,它只需要一个XML摘录和一个XPath。然后它应该为该XML摘录创建一个对象数组。意思是如果我通过以下XML:Bob50我的方法将实例化类User的实例并使用键值编码来设置实例变量。这很简单。唯一的问题是我主要来自脚本编写背景,并试图查看是否可以将类名传递给该方法。现在它正在做一个User类,稍后它可能是一个Cars类,然后是一个Home类。从这种不同类型的方法实例化对象同时保持代码尽可能抽象的最佳方法是什么? 最佳答案 要使用其名称实例化类,您可以使用NSClassFromString:idobj=[[

ios - NSClassFromString 行为不当和缓存类

我有一个类X和几个类X1,X2,X3,X4是X的后代我有一个带有类名的NSArray,我用它来迭代:_classnames=@[@"X1",@"X2",@"X3",@"X4"];然后:-(UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath:(NSIndexPath*)indexPath{staticNSString*identifier=@"cellId";UITableViewCell*cell=[tableViewdequeueReusableCellWithIdentifier:ident

objective-c - 关于 NSClassFromString/检查手势识别器的混淆

我正在尝试使用NSClassFromString来防止代码块在iOS3.2之前的设备上运行。有问题的代码块如下:if(NSClassFromString(@"UITapGestureRecognizer")){UITapGestureRecognizer*tap=[[[UITapGestureRecognizeralloc]initWithTarget:selfaction:@selector(dismissKeyboard)]autorelease];[tapsetCancelsTouchesInView:NO];[[selfview]addGestureRecognizer:tap

ios - 是否可以从字符串声明变量类型?

我不知道这个的技术术语。我想知道在ObjectiveC中,是否可以像这样声明一个变量:NSClassFromString(aClassName)*var;或[NSClassFromString(aClassName)class]*var;显然,以上两个都不正确。我想要的是动态声明一个变量。谢谢。 最佳答案 你应该制作id类型的ivar,然后让它动态类型化。例如,如果你想动态输入NSString,你可以这样做:idivar;ClassmyClass=NSClassFromString(@"NSString");ivar=[[myCla

c# - MonoTouch NSClassFromString

我正在尝试在MonoTouch中使用诸如以下Objective-C的代码:if(NSClassFromString(@"ADBannerView"))C#中的等价物是什么?基本上我想使用iAd,但我需要检查ADBannerView和ADInterstitialAd是否存在,因为它们并非在所有版本的操作系统上都可用.(与iOS版本检查相比,我更愿意进行功能检查)我认为这在其他情况下也会有所帮助。 最佳答案 最近的MonoTouch将始终提供ADBannerView,因此您无法使用C#等效的Type.GetType来查询可用性。通常情况

ios - 检查 NSClassFromString 返回的 nil 值

我们可以使用NSClassFromString创建一个类:Classclass=NSClassFromString(@"someClass");idobject=[[classalloc]init];[objecttest];这里没问题。如果字符串给出的类不存在,NSClassFromString将返回nil。很公平,当对象为nil(因为类为nil)时调用[objecttest];不会导致任何问题。作为实验,我将@"someClass"更改为不存在的其他内容。通过记录class的值(当NSClassFromString返回nil时)它显示0x0。随后我尝试替换为测试:idobject=

swift - NSClassFromString 使用 Swift 文件

我在现有的Objective-C项目中用Swift编写了一个类。到目前为止,桥接工作非常顺利。然而,我确实有一个方法,我在运行时使用NSClassFromString()生成一个类。当字符串是我的Swift类名时,它返回nil。classMySwiftClass:NSObject{}在Objective-C中:ClassmyClass=NSClassFromString(@"MySwiftClass");myClass每次都是nil。我也试过:ClassmyClass=NSClassFromString(@"MyAppName.MySwiftClass");仍然是零。

ios - 无法移动键盘 View iOS9 swift

我需要像iOS上的股票消息应用中那样实现一个轻视键盘(向下滑动以关闭)。我有这段代码来获取键盘View:funckeyboardWillShowWithNotification(notification:NSNotification){letkeyboardView=accessoryView.superview}并且我连接了tableView的UIPanGestureRecognizer以检测何时需要开始向下移动键盘。funchandleTableViewPan(gr:UIPanGestureRecognizer){letlocation=panGestureRecognizer.l

ios - 不明白 NSClassFromString 如何用于条件调用

我的项目中有一个测试类,它在开发阶段就存在,但会为应用商店构建编译出来。我在几本书中读到NSClassFromString可用于确定类是否存在,示例代码如下:if(NSClassFromString(@"SomeClass")!=nil){[SomeClasssomeMethod];}else{codenotusingSomeClass}然而,在我的项目中将其付诸实践后,我发现我在删除包含SomeClass的源文件的目标时遇到链接错误。因此,我的结论是,这种用于确定某个类存在/不存在的机制仅在该类位于您使用其他类的库或源文件中时才有用(提及此技术的书中缺少详细信息).还是我遗漏了什么?

swift - 在 swift 中使用 NSClassFromString 实例化嵌套类

我有一个这样定义的嵌套类:@objcclassA{@objcclassB{}}我需要使用NSClassFromString实例化A.B。我能够为简单的类A做到这一点,但是当我将NSClassFromString参数附加到.B字符串时,它只返回nil。NSClassFromString("\(appName).A")//works...NSClassFromString("\(appName).A.B")//doesn'twork.我想因为嵌套类在Objective-c中不可用,所以NSClassFromString对嵌套类不起作用......在这种情况下,还有另一种方法可以从字符串?/
12