使用UIProgressView作为目标的进度指示器

时间:2012-09-10 15:40:07

标签: iphone ios xcode user-interface

我已经尝试过自己解决这个问题了,对于如何完成它我完全不知道。基本上我要做的是这样:

总体目标:使用UIProgressView作为指标的“不同类型”而不是它的含义。
详细信息:当用户“完成”'目标'时(通过按下名为“完成”的UIButton)在一个单独的UIViewController中,让我们称之为“View Controller 1”。我希望它在第二个UIViewController中更新UIProgressView(称之为“View Controller 2”)。 View Controller 2中有几个UIProgressViews,每个View Controller代表“已完成”类别中的目标数量。所以我喜欢 (void)progressMade:(NSString *)category { categoryOneProgressView.progress += 1/8 ; //this would be called from View Controller 1, after the "complete" button was pressed. } 2中有一个这样的void方法:

{{1}}

enter image description here

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您可以执行的操作是在VIEW CONTROLLER 1中触摸按钮时,您可以存储在特定类别中完成的目标的值。 View Controller 1的示例代码:

-(void)methodTriggeredOnCompleted:(NSString *)category
{
    //Do you calculation for progress of a category 

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

    [defaults setValue:saveProgressValue forKey:category];
    [defaults synchronize];
}

现在在View Controller 2中你应该做的是在ViewDidLoad方法或ViewWillAppear方法中你应该得到你存储在NSUserDefaults中的值并在进度条值中更新它

-(void)viewDidLoad
{
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    int val = [defaults valueForKey:category];
    categoryOneProgressBar.progress = val;
}