我這是我的第一個iphone應用程序。我的應用程序顯示不同的視圖,並從最小化模式返回。我想確定當前顯示哪些視圖。 我嘗試在applicationDidEnterForeground()
事件中使用"isa"
。 但我認爲我不正確。查找typeof查看
0
A
回答
0
您可以使用tag
屬性來標記您的視圖並使用它來標識特定的視圖。這可能會更好,因爲tag
屬性將識別類的實例,而不僅僅是類類型。
如果你想雖然檢查類的類型,你可以使用NSObject的協議實例方法:
- (BOOL)isKindOfClass:(Class)aClass
或
- (BOOL)isMemberOfClass:(Class)aClass
您使用對象的class
實例方法來回報對象的類。 isKindOfClass:如果實例的類與提供的類相同(或者它是該類的子類),則返回true,其中isMemberOfClass:如果實例的類與該實例的類完全相同,則返回true一個提供。例如:
if ([myObject isMemberOfClass:[UITableView class]])
{
// Do stuff
}
0
使用isa
是不是真的這個問題的核心,只要我能看到 - isa
與階級身份的事,但在這裏,你的核心問題實際上是查不到的類實例你需要識別!你在訪問isa
屬性時是什麼?
This question可儘管有關 - 尤其是我的答案,這部分:
有沒有現成的方式告訴 這是「當前」 的UIViewController的方式。但你可以找到解決辦法,例如 是代理方法 UINavigationController用於在UIViewController在其中呈現 時找出 。你可以使用這樣的東西來 追蹤已經呈現的最新UIViewController 。
東西這可能是有用的:因爲iOS4的,UIWindow
具有被設置爲當前的根視圖控制器屬性rootViewController
。很明顯,這可能是一個UINavigationController或一些其他的UIViewController聚合,所以你仍然不得不做了一些工作,在這種情況下...
相關問題
- 1. 按名稱查找查看
- 2. MYSQL查看和查找
- 3. typeof()檢查數字值
- 4. MyApphow檢查 「的typeof MyApp.User.current.language」
- 5. 從Codeigniter中查找查看頁面
- 6. 我如何monkeypatch快速查看查找?
- 7. VBA查找正在查看隱藏行
- 8. Java Web查看 - 本機查找
- 9. 按照查找高亮由Cgridview查看
- 10. 通過GUID查找SharePoint查看
- 11. 按名稱查找MVC模板查看
- 12. Laravel查看未找到
- 13. Laravel 5.1查看找不到
- 14. 找不到視頻查看
- 15. 查看找不到型號
- 16. 查看[layouts.app]找不到laravel
- 17. Laravel:查看未找到
- 18. InvalidArgumentException - 查看未找到
- 19. 查看,查看什麼?
- 20. Android查看和查看組
- 21. 從查詢/查看字段中查找底層字段
- 22. JavaScript的typeof函數檢查爲null
- 23. 檢查typeOf undefined無法正常工作?
- 24. JavaScript:使用typeof來檢查字符串
- 25. 真的檢查是否未定義typeof
- 26. Couchdb查看查詢
- 27. 查看SQL查詢
- 28. 查看SQL查詢
- 29. 查詢與查看
- 30. 查看頁面查看列表查看行項目
這個信息並不能真正幫助但回答他的問題 - 他需要的一些方法訪問當前顯示的視圖。 – occulus 2011-03-14 08:07:36
對不起,「isa」位把我扔了。有關從UIApplicationDelegate類訪問視圖的問題,看我在這裏所作的答案:http://stackoverflow.com/questions/5290622/access-method-in-viewcontroller-from-appdelegate/5290755#5290755 – 2011-03-14 08:37:38