欧美人两个人激情的免费视频_国产亚洲人成网站在线观看不卡_直接看毛片_免费乱理伦片在线观看app

十三年專注于網站建設與互聯網應用開發,低調、有情懷的網絡應用服務商!
南昌百恒科技微信公眾號 掃一掃關注
tel-icon全國服務熱線:400-680-9298,0791-88117053
掃一掃關注百恒科技微信公眾號

進度條 ProgressView如何實現

百恒網絡 2018-09-30 16:28:18 2597
? ? ? ?進度條體現了任務執行的進度,同活動指示器一樣,也有消除用戶心理等待時間的作用。

? ? ? ?為了模擬真實的任務進度的變化,我們在南昌APP開發過程中可以引入定時器(NSTimer)。定時器繼承于NSObject類,可在特定的時間間隔后向某對象發出消息。

? ? ? ?打開Interface Builder,實現按鈕的動作和進度條的輸出口,ViewController中的相關代碼如下:

? ? ? ?class ViewController: UIViewController {
? ? ? ??@IBOutlet weak var myProgressView: UIProgressView!
? ? ? ? @IBAction func downloadProgress(sender: AnyObject) {
? ? ? ? }
? ? ? ?}?

? ? ? ?//ViewController.m文件
? ? ? ?@interface ViewController ()
? ? ? ?……
? ? ? ?@property (weak, nonatomic) IBOutlet UIProgressView *myProgressView;
? ? ? ?- (IBAction)downloadProgress:(id)sender;
? ? ? ?@end?

? ? ? ?其中Download按鈕的實現代碼如下:
? ? ? ?class ViewController: UIViewController {
? ? ? ?@IBOutlet weak var myProgressView: UIProgressView!
? ? ? ?var myTimer: NSTimer!
? ? ? ?@IBAction func downloadProgress(sender: AnyObject) {
? ? ? ?myTimer = NSTimer.scheduledTimerWithTimeInterval(1.0, target: self,
? ? ? ?selector: "download", userInfo: nil, repeats: true) ①
? ? ? ?}
? ? ? ?func download() { ②
? ? ? ?self.myProgressView.progress = self.myProgressView.progress + 0.1
? ? ? ?if (self.myProgressView.progress == 1.0) {
? ? ? ?myTimer.invalidate() //停止定時器
? ? ? ?var alert : UIAlertView = UIAlertView(title: "download completed!",
? ? ? ?message: "", delegate: nil, cancelButtonTitle: "OK") ③
? ? ? ?alert.show()
? ? ? ?}
? ? ? ?}

? ? ? ?}?
? ? ? ?- (IBAction)downloadProgress:(id)sender
? ? ? ?{
? ? ?? myTimer = [NSTimer scheduledTimerWithTimeInterval:1.0
? ? ? ?target:self
? ? ? ?selector:@selector(download)
? ? ? ?userInfo:nil
? ? ? ?repeats:YES]; ①
? ? ? ?}
? ? ? ?-(void)download{ ②
? ? ? ?self.myProgressView.progress=self.myProgressView.progress+0.1;
? ? ???if (self.myProgressView.progress==1.0) {
? ? ? ?[myTimer invalidate]; //停止定時器
? ? ? ?UIAlertView*alert=[[UIAlertView alloc]initWithTitle:@"download completed!"
? ? ? ?message:@""
? ? ? ?delegate:nil
? ? ? ?cancelButtonTitle:@"OK"
? ? ? ?otherButtonTitles: nil]; ③
? ? ? ?[alert show];
? ? ? ?}
? ? ? ?}

? ? ? ?第①行代碼中使用了NSTimer類。NSTimer是定時器類,它的靜態方法是scheduledTimerWithTimeInterval:
? ? ? ?target:selector:userInfo:repeats:,可以在給定的時間間隔調用指定的方法,其中第一個參數用于設定間隔時間,第二個參數target用于指定發送消息給哪個對象,第三個參數selector指定要調用的方法名,相當于一個函數指針,第四個參數userInfo可以給消息發送參數,第五個參數repeats表示是否重復。

? ? ? ?第②行代碼的download方法是定時器調用的方法,在定時器完成任務后一定要停止它,這可以通過語句myTimer.invalidate()(Objective-C版中是[myTimer invalidate])來實現。
400-680-9298,0791-88117053
掃一掃關注百恒網絡微信公眾號

歡迎您的光顧,我們將竭誠為您服務×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務 售后服務
 
備案專線 備案專線
 
售后服務 售后服務
 
×