如何检查两个UIViewController子类对象是否具有相同的子类?我有两个UIViewControllers,我需要比较,看看他们是否是UIViewController的相同的子类
0
A
回答
1
在斯威夫特3,您可以用(:)的方法类型比较对象的类型:
class VC1: UIViewController {
}
class VC2: UIViewController {
}
let vc1 = VC1()
let vc2 = VC2()
let typeComparisonResult = type(of: vc1) == type(of: vc2)
+0
谢谢,我看到了typeof(vc1),但我没有看到swift 3的版本。很难找到这个答案,然后我认为它会是,但是我解决了我需要以代码方式做的事情。谢谢! – Sethmr
0
Swift允许通过使用is
关键字进行类比较。例如,如果您有class a
和class b
,它们都是UIViewController的子类。然后你可以使用is关键字来确认。
class a:UIViewController
{
}
class b:UIViewController
{
}
let instanceA:a = a()
let instanceB:b = b()
if a is UIViewController && b is UIViewController
{
print("Both are subclasses of UIViewController")
}
相关问题
- 1. 比较两棵树,看看它们是否相同
- 2. 比较两个二叉树,看他们是否有相同的结构
- 3. 比较两个文件,看它们在PHP中是否相同
- 4. 比较两个日期时,他们是否需要使用相同的格式?
- 5. 比较文件和列表,看看它们是否相同
- 6. VBA比较2个XML节点,看看他们是否是同一节点
- 7. 什么是正确的方式来比较两个文件名,看看他们是否是同一个文件?
- 8. 比较两个网站,看看它们是否“平等”?
- 9. 比较两个ObservableCollection(s)以查看它们是否不同
- 10. 我需要比较两个字符串以查看它们是否匹配或是否接近匹配
- 11. 比较两个输入的数字以查看它们是否相同
- 12. 比较两个java.util.Dates,看看他们都在同一天
- 13. 我需要看看两个数字是否为倍数
- 14. 比较2棵树看它们是否包含相同的值
- 15. T-sql比较两个变量,看看其他人是否拥有第一个
- 16. 比较来自数据库的结果,看看它们是否相同
- 17. 将excel中的两列进行比较,看看值是否相同
- 18. 比较excel中的两个表,看看列是否匹配
- 19. Objective C比较两个CGPoint以查看它们是否接近?
- 20. 查看两个对象是否具有相同的类型
- 21. 我们是否需要两个不同的ImageViews的位图
- 22. 比较一个WordPress循环内的ACF字段,看它们是否相同
- 23. 比较两个图像是否相同
- 24. 比较7个单词到eachother,看看他们中的5个是否相等。怎么样?
- 25. 如何在Dart中比较两个对象以查看它们是否是相同的实例?
- 26. 我如何比较两个图像,以知道他们是否有相同的部分
- 27. 的iOS比较两个对象,看看他们是否在时间事件重叠
- 28. C++ char比较来查看一个字符串是否符合我们的需要
- 29. 我们是否需要ezpublish_legacy?
- 30. 从对象的角度来看,子类是否等同于他们的racine类?
你觉得'如果让VC1作为? TheSubclass,vc2?作为TheSubclass {...}',还是你在寻找一个通用的解决方案,你甚至不知道子类? –
我在比较两个子类,所以type(of:vc1)== type(of:vc2)应该是正确的实现,但我最终采取了更优雅的方法,在我的代码中找到。不过,我相信我会在未来找到这方面的用处。我发现更经常的是,不必键入检查是实现代码的不好方法。它类似于理论上知道它是父vc的孩子vc。无论如何感谢大家的时间! – Sethmr