我正在玩DYRateView ....一个控件在我试过的一长串控件列表的末尾。可在此处找到:https://github.com/dyang/DYRateView
我尝试的所有控件的问题是,一旦更改后我似乎无法保存评级。我正在使用NSUserDefaults,并尝试将其放置在各种位置,包括值的更改位置,视图的设置位置,在viewDillLoad中,在viewWillAppear中,在源代码本身内。保存这个值只是让我感到沮丧。我将不胜感激任何帮助。为了了解它应该如何工作,我刚刚使用DYRateView附带的示例代码。以下是相关代码:
for i in list_1:
if i in list_2:
感谢任何花时间的人!
答案 0 :(得分:1)
您正在尝试将NSNumber
保存为NSInteger
。您应该[[NSUserDefaults standardUserDefaults] setInteger:[rate integerValue] forKey:@"rating"];
或使用- setObject:forKey:
,因为NSNumber
是一个对象,而不是标量。
答案 1 :(得分:0)
您获得rating
valuea at:[[NSUserDefaults standardUserDefaults] integerForKey:@"rating"];
但是您使用此值做了什么?
我认为您需要获取此值并设置为DYRateView。所以:
DYRateView
:@property DYRateView * rateView
setUpEditableRateView
:self.rateView = [[DYRateView alloc] initWithFrame:CGRectMake(0, 40, self.view.bounds.size.width, 20) fullStar:[UIImage imageNamed:@"StarFullLarge.png"] emptyStar:[UIImage imageNamed:@"StarEmptyLarge.png"]];
self.rateView
(将其添加到setUpEditableRateView
末尾):rateView.rate = [[NSUserDefaults standardUserDefaults] integerForKey:@"rating"]