如何檢查兩個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. 比較兩個文件,看它們在PHP中是否相同
- 3. 比較兩個日期時,他們是否需要使用相同的格式?
- 4. 比較文件和列表,看看它們是否相同
- 5. VBA比較2個XML節點,看看他們是否是同一節點
- 6. 什麼是正確的方式來比較兩個文件名,看看他們是否是同一個文件?
- 7. 比較兩個網站,看看它們是否「平等」?
- 8. 比較兩個ObservableCollection(s)以查看它們是否不同
- 9. 比較兩個java.util.Dates,看看他們都在同一天
- 10. 我比較兩個相等的值,但結果說,他們是不同的
- 11. 比較excel中的兩個表,看看列是否匹配
- 12. Objective C比較兩個CGPoint以查看它們是否接近?
- 13. 查看兩個對象是否具有相同的類型
- 14. 比較一個WordPress循環內的ACF字段,看它們是否相同
- 15. 比較兩個圖像是否相同
- 16. 比較7個單詞到eachother,看看他們中的5個是否相等。怎麼樣?
- 17. C++ char比較來查看一個字符串是否符合我們的需要
- 18. 從對象的角度來看,子類是否等同於他們的racine類?
- 19. 我怎麼可以看到,如果他們是同一類型
- 20. 我們是否需要同步add()方法這個類?
- 21. 有人可以看看這個PHP文件,看看他們是否可以發現問題。我很爲難
- 22. 子類一UIViewControllers查看
- 23. 我需要這個變量採取查看比較
- 24. 蟒蛇 - 比較兩個列表,看看是否發生在另一個連續
- 25. 如何比較JavaScript中的2個變量以查看日期是否相同?
- 26. 我需要比較2個數組與vb.net中的相同值
- 27. 比較兩個字符串以查看它們是否爲旋轉
- 28. 我需要比較和文檔相同的Javascript/XML項目的兩個版本
- 29. 我們是否需要每個子網的接口路由器?
- 30. Flex Viewstack的孩子們,如果你看不到他們,他們是否存在?
你覺得'如果讓VC1作爲? TheSubclass,vc2?作爲TheSubclass {...}',還是你在尋找一個通用的解決方案,你甚至不知道子類? –
我在比較兩個子類,所以type(of:vc1)== type(of:vc2)應該是正確的實現,但我最終採取了更優雅的方法,在我的代碼中找到。不過,我相信我會在未來找到這方面的用處。我發現更經常的是,不必鍵入檢查是實現代碼的不好方法。它類似於理論上知道它是父vc的孩子vc。無論如何感謝大家的時間! – Sethmr