我们如何在表中创建部分,因为没有委托。有没有其他方法可以创建部分,或者我们必须使用两个表。
答案 0 :(得分:17)
WKInterfaceTable不像UITableView那么灵活,但您可以使用不同的行类型手动创建行。并根据其类型填充每个单元格的内容。
参见文档:
Apple Watch Programming Guide: Tables
WatchKit Framework Reference: WKInterfaceTable
例如,让我们创建包含两种行类型的表:
detailRowType
#define type1 @"HeaderRowType"
#define type2 @"DetailRowType"
// You also must create two classes: HeaderRowType and DetailRowType - controllers for these two types
// preparing datasource: fill rowTypes and tableObjects
NSArray* rowTypes = @[type1, type2, type2, type2, type1, type2, type2]; // types for table with 1 header cell and 3 detail cells in first "section", 1 header and 2 detail cells in second "section"
// set types! self.someTable - WKInterfaceTable, associated with table in UI
[self.someTable setRowTypes:rowTypes];
for (NSInteger i = 0; i < rowTypes.count; i++)
{
NSString* rowType = self.rowTypes[i];
if ([rowType isEqualToString:type1])
{
// create HeaderRowType object and fill its properties. There you also can parse any data from main iPhone app.
HeaderRowType* type1Row = [self.someTable rowControllerAtIndex:i];
// type1Row.property1 = ...;
}
else
{
DetailRowType* type2Row = [self.someTable rowControllerAtIndex:i];
// type2Row.property1 = ...;
// type2Row.property2 = ...;
}
}
完成!利用您的想象力创建更复杂的数据结构。
答案 1 :(得分:4)
WatchKit表没有节或页眉,页脚,编辑,搜索,数据源或代理。
答案 2 :(得分:0)
WatchKit API不提供表格部分。但是section只是一组具有额外页眉/页脚视图的单元格,可以使用自定义设计的单元格进行模拟:
我创建了简单的WKInterfaceTable extensions,这有助于管理表格。下载Sample app。