gpt4 book ai didi

ios - 如何保存评级控制值?

转载 作者:行者123 更新时间:2023-11-29 01:48:31 25 4
gpt4 key购买 nike

我正在使用 DYRateView....这是我尝试过的一长串控件末尾的一个控件。可以在这里找到:https://github.com/dyang/DYRateView

我尝试过的所有控件的问题是,一旦评级更改,我似乎无法保存评级。我正在使用 NSUserDefaults 并尝试将其放置在各种位置,包括值更改的位置、设置 View 的位置、viewDidLoad 中的 viewWillAppear 中的源代码本身。保存这个值让我很困惑。我将不胜感激任何帮助。为了了解它是如何工作的,我刚刚研究了 DYRateView 附带的示例代码。相关代码如下:

THE .M FILE

#import "DemoViewController.h"

@interface DemoViewController ()

- (void)setUpEditableRateView;

@end

@implementation DemoViewController


- (void)viewDidLoad
{
[super viewDidLoad];

[[NSUserDefaults standardUserDefaults] integerForKey:@"rating"];

[self setUpEditableRateView];
}

- (void)setUpEditableRateView {
DYRateView *rateView = [[DYRateView alloc] initWithFrame:CGRectMake(0, 40, self.view.bounds.size.width, 20) fullStar:[UIImage imageNamed:@"StarFullLarge.png"] emptyStar:[UIImage imageNamed:@"StarEmptyLarge.png"]];
rateView.padding = 20;
rateView.alignment = RateViewAlignmentCenter;
rateView.editable = YES;
rateView.delegate = self;
[self.view addSubview:rateView];
[rateView release];
}

- (void)rateView:(DYRateView *)rateView changedToNewRate:(NSNumber *)rate {
self.rateLabel.text = [NSString stringWithFormat:@"Rate: %d", rate.intValue];

[[NSUserDefaults standardUserDefaults] setInteger:rate forKey:@"rating"];
[[NSUserDefaults standardUserDefaults] synchronize];
}

@end

感谢所有抽出时间的人!

最佳答案

您正在尝试将 NSNumber 保存为 NSInteger。您应该执行 [[NSUserDefaults standardUserDefaults] setInteger:[rate integerValue] forKey:@"rating"]; 或使用 - setObject:forKey: 因为 NSNumber 是一个对象,而不是标量。

关于ios - 如何保存评级控制值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31665159/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com