UITableView&控制器给我空表视图

时间:2013-03-06 10:38:32

标签: ios objective-c xcode

我有一个应用程序(导航控制器),其中第二个控制器是表视图控制器。我可以通过segue发送我所需的数据,但无法以编程方式更新tableview中的条目。

我是IOS的新手。

这是我的头文件

#import <UIKit/UIKit.h>
@interface HCIResultListViewController : UITableViewController

@property (strong,nonatomic) NSMutableDictionary *resultList;
@property (strong, nonatomic) IBOutlet UITableView *tableListView;

@end

这是我的实施文件。

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    #warning Potentially incomplete method implementation.
    // Return the number of sections.
    return 0;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
#warning Incomplete method implementation.
// Return the number of rows in the section.
return 0;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"HelloCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

if (cell == nil){
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
}

cell.textLabel.text = @"Hello";

// Configure the cell...

return cell;
}

任何人都可以告诉我如何使用tableview&amp;控制器?

我确实经历了几个文档和示例,但实际上无法理解

8 个答案:

答案 0 :(得分:1)

如果将UITableView设置为0,您对numberOfRowsInSection的期望是什么?

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
#warning Incomplete method implementation.
// Return the number of rows in the section.
return 0; // it should be size of your Array or List 
}

您应该将行数更改为数组大小或您在UITableView

中填充的任何数据

答案 1 :(得分:1)

你需要返回至少1才能看到一些数据

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

答案 2 :(得分:1)

tableView的部分数为0!让它1

答案 3 :(得分:1)

它可能对你有帮助

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
#warning Incomplete method implementation.
// Return the number of rows in the section.
return 4;
}

答案 4 :(得分:1)

您需要指定表视图的行数和节数。像这样。

  - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
    {
        #warning Potentially incomplete method implementation.
        // Return the number of sections.
        return 1;
    }

    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
    {
    #warning Incomplete method implementation.
    // Return the number of rows in the section.
    return [sourceData Count]//i.e., 10;
    }

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    {
    static NSString *CellIdentifier = @"HelloCell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil){
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
    }

    cell.textLabel.text = @"Hello";

    // Configure the cell...

    return cell;
    }

答案 5 :(得分:1)

替换你的方法:

    - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
   {
    #warning Potentially incomplete method implementation.
    return 1;
    }

答案 6 :(得分:1)

这正是Apple的模板所指的那样:

#warning Potentially incomplete method implementation.

您需要在那里返回适当的值。 如果您只有1个部分,则从numberOfSectionsInTableView返回1(这是正常情况,我会说)。 并从numberOfRowsInSection返回要填充的行数。这可能是数组的计数或获取的数据集的数量,或者如果它不是动态的,则是一些硬编码值/常数值。

然后,

cellForRowAtIndexPath将被调用为每个行/节组合的最大值,但仅适用于从开始可见或大约可以滚动到可见区域的那些单元格。

答案 7 :(得分:0)

 - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{    
   //warning Incomplete method implementation.
    // Return the number of rows in the section.
   //   
  return 1;
}

根据此数据源方法说,作为数字行需要并且您必须返回0因此不生成任何行,因此也不生成单元格,因此根据我们的要求静态否则动态生成行至少1行返回。