在UITableViewController中使用另一个UITableView

时间:2012-10-25 07:19:22

标签: iphone ios6 uitableview

我有一个UITableViewController,有自己的tableview。 但我仍然想要另一个UITableView,其数据源和代理属于另一个类。

症状是: iPhone 4.0无法显示UITableView,而iPhone 6.0模拟器可以以可见且正确的方式显示此UITableView。

NSLog告诉我,在iPhone上UITableView的高度为0.0。

问题是:我将通过

获得第二个UITableView
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView

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

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

没有任何回应......

1 个答案:

答案 0 :(得分:0)

你可以试试这个。

为UITableView创建两个对象。

  

numberOfRowsInSection部分执行此操作

  • (NSInteger)tableView:(UITableView *)tblView numberOfRowsInSection:(NSInteger)section {

    if(tableView == tblLog)   返回3; //无论什么价值  其他   返回2; }

  

CELLFORROWATINDEX部分执行此操作。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

    UILabel *headingLabel;
    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil)
    {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:CellIdentifier] autorelease];
        cell.backgroundColor = [UIColor whiteColor]; 
    }

    if(tableView == tblLog)
    {
        switch (indexPath.row)
        { 
            case 0:
            {
                //do something

            } break;

            case 1:
            {
               //do something

            } break;
        }

    }
    else if (tableView == tblRange)
    {
        switch (indexPath.row)
        { 
            case 0:
            {
                //do something
            }break;

            case 1:
            {
                //do something
            }break;
        }
    }

    return cell;
}

如果有帮助,请告诉我