将收藏夹功能添加到 iPhone App iphone sdk

Posted

技术标签:

【中文标题】将收藏夹功能添加到 iPhone App iphone sdk【英文标题】:adding favorites feature to iPhone App iphone sdk 【发布时间】:2010-11-02 18:55:54 【问题描述】:

我想添加一个像这样工作的自动收藏功能:

我有一个带有单元格名称和未选中星号的详细视图。用户点击未选中的星号,选中星号并将特定单元格名称添加到另一个视图。在任何时候,用户都可以转到详细视图并再次点击星号,星号将变为未选中状态,并且单元格名称将从另一个视图中删除。

我想用一个自定义按钮作为星号,用一个表格视图作为另一个视图。 最好使用 IBAction 或 IBOutlet。

detailView 中按钮的代码

-(IBAction)toggleFav:(UIButton *)sender 
if([sender isSelected])

    //...
    [sender setSelected:NO];
    NSMutableArray *array = [[[NSUserDefaults standardUserDefaults] objectForKey:@"valueSaver"] mutableCopy];
    [array removeObject:[NSString stringWithString:self.selectedSushi]];
    [[NSUserDefaults standardUserDefaults] setObject:array forKey:@"valueSaver"];
    [array release];

 else 

    //...    
    [sender setSelected:YES];
    NSMutableArray *array = [[[NSUserDefaults standardUserDefaults] objectForKey:@"valueSaver"] mutableCopy];
    [array addObject:[NSString stringWithString:self.selectedSushi]];
    [[NSUserDefaults standardUserDefaults] setObject:array forKey:@"valueSaver"];
    [array release];

【问题讨论】:

您可以为 UIButton 设置自定义图像。您将希望有 2 个不同的图像用于选中和未选中。 iboutlet没问题 【参考方案1】:

代表团是你的朋友:

为该详细视图编写一个控制器,用于保存星形。 此控制器有一个 id<AProtocolDefindeByYou> delegate 类型的委托成员。 在协议声明中,您可以使用informOfCheckTriggeredOnStar:informOfUnCheckTriggeredOnStar: 等方法 您在收藏夹视图的控制器中实现此委托方法,并将此控制器设置为每个详细视图的委托。

Delegation & Protocols

编辑 Quick'n'Dirty — 我为你写了一个小的sample code。它非常粗糙而且不好看,但它展示了它是如何工作的。

【讨论】:

当我运行 vscheck 收藏夹的示例代码时,它失败并出现 3 个错误和 4 个警告 showFavoritesTableViewController not found,并访问未知组件 tableView。 再试一次。我忘了添加一些文件 如何使我最喜欢的按钮突出显示,以便当用户再次点击它时它会熄灭。 我真的不明白你的问题。你最好用一些描述和代码提出一个新问题。 您可以将诸如单元格 indexPathes 之类的内容保存在数组中,并将其保存在 NSUserDefaults 中。一旦你创建了你检查的单元格,如果 indexPath 在选定的列表中。不要忘记投票。

以上是关于将收藏夹功能添加到 iPhone App iphone sdk的主要内容,如果未能解决你的问题,请参考以下文章

iPhone终极隐藏功能连苹果客服唔知都O晒嘴!实用到爆,广州人速度收藏啦!

如何将按钮样式的单元格添加到 iPhone 应用程序的表格视图中?

在 iPhone 设置应用程序中向滑块添加文本标签

iPhone隐藏最深小技巧,连苹果客服都看懵了,广州人快收藏!

iPhone 收藏网址[添加到书签] 和 [添加到主屏幕] 显示自定义图标,而不是网页截图

如何将 iPhone 版本添加到已经在 App Store 上的 iPad 应用程序