我希望为iTunes iPhone应用搜索界面创建一个类似的界面。我有几个问题似乎无法找到答案:
以下是iTunes iPhone应用搜索界面的图片:
Tap to Preview, Double-Tap to View info
部分标题下的Top Hits
。答案 0 :(得分:1)
您需要创建自定义UITableViewCell here's a tutorial。用于价格按钮和单元格的其他视觉效果。
对于Tap to Preview
副标题,您可以创建自定义标题视图,请参阅:
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
最有可能的是,您需要为此视图创建2 UILabels
,显然您需要匹配此处使用的字体。
- (UIView *) tableview:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
UIView *headerView = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, 30)] autorelease];
UILabel * label = [[UILabel alloc] initWithFrame:CGRectZero];
label.text = @"Top Hits";
label.backgroundColor = [UIColor clearColor];
label.font = [UIFont boldSystemFontOfSize:17];
[headerView addSubview:label];
UILabel * label2 = [[UILabel alloc] initWithFrame:CGRectZero];
label2.text = @"Tap to Preview, Blah blah blah";
label2.backgroundColor = [UIColor clearColor];
label2.font = [UIFont fontWithName:@"Apple's Default Font?" size:17];
[headerView addSubview:label2];
/* something like this */
return headerView;
}
- (CGFloat) tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
return 50.0f;
}
答案 1 :(得分:0)
您的大多数问题都可以在Apple的Table View Programming Guide for iOS中得到很好的解决。以下是一些简短的答案:
您可以将某个部分的标题设为UIView
,在这种情况下,您可以使用多个UILabel
来创建带字幕的标题等。
这可能设置为accessoryView
的{{1}},或者它可能是UITableViewCell
的完全自定义子类。
为此,您需要实施UITableViewCell
方法UITableViewDelegate
。有关自定义此方法的更多信息(例如,要区分单个和多个分类),请查看上述教程的Managing Selections部分。
答案 2 :(得分:0)
1 - 对于Custom标头 您可以使用表视图数据源方法 - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section;
然后您可以使用所有标签以编程方式创建视图 或者您可以在xib中创建一个单独的视图,在viewcontroller中创建它的实例并在上面的数据源方法中返回该实例 - 这种方法将更容易和更简单。
2-您可以使用uibutton并将其设置为背景图像来实现价格按钮 在自定义表格视图单元格中。您可以根据自己的功能隐藏/取消隐藏此按钮。
3-我建议你禁用tableview选择并将tap手势识别器添加到自定义表格视图单元格。这会给你更多的灵活性
希望这可以帮到你