我是iOS开发人员的新手,所以我为提出可疑的问题而道歉。
我想要做的是与默认的天气应用程序非常相似的东西;应用程序有一个信息按钮,它会翻转到另一个视图,该视图有一个表格和一个完成按钮,可以返回到应用程序。
我正在使用“实用程序应用程序”模板,该模板为我完成了大部分工作:)
但是,我现在正努力在flipview中添加一个tableview。我在正确的道路上吗?我现在正在使用故事板 - 开始意识到这很可能是对GUI的限制(毕竟GUI只能到目前为止)。如果是这样,这可能是以编程方式进行的,我将如何在默认的“实用程序应用程序”模板上应用它。
我正在使用Xcode 4.2。
任何帮助将不胜感激。在此先感谢:)
答案 0 :(得分:3)
首先,您需要将UITableView拖放到界面构建器中的flipsideViewController
上。确保您将其委托和数据源添加到视图控制器。
然后更改flipsideViewController.h
以创建数组的实例变量,该变量将存储单元格标签的文本,并使控制器符合表委托和数据源方法。
@interface FlipsideViewController : UIViewController <UITableViewDataSource, UITableViewDelegate>
{
NSArray *myArrayOfItems;
}
在flipsideViewController.m
alloc / init中,在viewDidLoad
myArrayOfItems = [[NSArray alloc] initWithObjects:@"firstItem",@"secondItem",@"thirdItem",@"fourthItem", nil];
最后,复制并粘贴以下内容,你应该有一张工作台!
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [myArrayOfItems count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
cell.textLabel.text = [myArrayOfItems objectAtIndex:indexPath.row];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"Selected cell index:%i",indexPath.row);
}