在我的應用程序中,我注意到它會在運行的前幾秒緩慢運行,因爲對象仍在初始化,繪製到屏幕等。如何加載這些對象並創建一個條來顯示進度加載?如何以編程方式在iPhone應用程序中加載東西?
0
A
回答
2
您可以顯示加載屏幕。 您可以使用不同的線程並分離線程。 或者,您可以使用UIActivityIndicatorView
或UIProgressBar
來顯示當前正在加載。
UIActivityIndicatorView
基本上就像當你啓動你的mac。一個旋轉的圈子。 UIProgressBar
是一個空的酒吧,隨着加載量的增加而填滿藍色。
一個UIProgressBar
有一個名爲progress
,而你只是發送startAnimating
和stopAnimating
消息到UIActivityIndicator
想了解更多關於這兩個變量,檢查下面的鏈接:
Progress Bar Apple Documentation
Activity Indicator Apple Documentation
更新你的問題在其他答案:
你在裝呢?您正在加載的類/對象是否具有委託方法?如果你說
仍然被初始化,並繪製到屏幕
考慮以下object
是你的對象之一 可以說
if (object) {
// saying just 'object' asks if it is non-zero/valid
}
另外要檢查是否吸引到屏幕試試:
if([self.view.subviews containsObject:object])
或
if([object superview] == self.view)
或方法
-(BOOL)isDescendantOfView:(UIView *)view;
返回值YES
如果接收機的視圖立即或遠處子視圖或者如果視圖是接收器本身;否則爲NO
。
ALSO:當我說self.view
時,它不一定是self
,因爲加載視圖可能是不同的視圖。您可以向其他班級發出一個對象,然後調用該班級而不是self
。像:if([otherClass.object superview] == otherClass.view)
你也可以將在其他類的update
方法,所以你可以說:
if([otherClass finishedLoading])
,然後有以此爲update
方法:
- (BOOL)finishedLoading {
return ([object superview] == self.view)
}
這是很多參加!還有其他問題嗎?
2
相關問題
- 1. 如何以編程方式將東西添加到JS對象?
- 2. 以編程方式卸載iPhone應用程序
- 3. 如何以編程方式卸載Windows中的應用程序?
- 4. 如何以編程方式退出iPhone應用程序?
- 5. 如何以編程方式在Chrome應用中加載JavaScript?
- 6. 如何在android中以編程方式添加應用程序快捷方式
- 7. 如何以編程方式卸載Silverlight 4 OOB應用程序
- 8. 如何以編程方式衡量應用程序下載
- 9. 如何以編程方式卸載應用程序
- 10. 以編程方式加載和刪除應用程序
- 11. 無法以編程方式加載應用程序條
- 12. 以編程方式加載e4應用程序模型
- 13. 如何在iPhone筆記應用程序中以編程方式創建筆記
- 14. 如何以編程方式在iPhone應用程序中打開LinkedIn Comapny Url?
- 15. 如何以編程方式在iPhone應用程序中創建.docx文件?
- 16. 如何在iphone應用程序中以編程方式創建PDF文件?
- 17. 以編程方式讓iPhone從應用程序中沉默?
- 18. 以編程方式向iOS視圖添加東西
- 19. 如何在iOS中以編程方式重新啓動或重新加載iPhone應用程序
- 20. 如何以編程方式加載UIViewController?
- 21. 如何以編程方式加載UIViewController
- 22. 如何在Macintosh中以編程方式退出應用程序
- 23. 如何以編程方式重新加載chrome包應用程序?
- 24. 如何以編程方式將.epub加載到iphone
- 25. 如何在iPhone應用程序的應用程序文件夾中以編程方式存儲圖像?
- 26. 如何從iPhone應用程序中以編程方式傳真文檔?
- 27. 如何以編程方式從iPhone設備中刪除應用程序?
- 28. 如何以編程方式重新啓動iOS中的iPhone應用程序
- 29. 在越獄iDevice上以編程方式卸載應用程序
- 30. 以編程方式打開設置應用程序(iPhone)
這很有幫助,我想我會用測試的方法去看所有的子視圖是否已經初始化。謝謝! – Fitzy