Как вручную вызвать UITableView - PullRequest
2 голосов
/ 10 декабря 2011

Я динамически создал UITableView в своей программе.

В файле .h я написал это:

UITableView *aTableView

В файле .m я написал это: в методе didload

aTableView=[[UITableView alloc] initWithFrame:[[UIScreen mainScreen]applicationFrame] 
  style:UITableViewStyleGrouped];

aTableView.delegate=self;
aTableView.datasource=self;
aTableView.autoresizeSubviews=YES;

self.view=aTableView

и за пределами метода didload я написал это:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return [a count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView 
         cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *CellIdentifier=@"Cell"; 

    static NSInteger StateTag = 1;
    static NSInteger CapitalTag = 2;
    static NSInteger StateTag1 = 3;
    static NSInteger StateTag2 = 4;


    UITableViewCell *cell=[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if(cell == nil){
        cell=[[[UITableViewCell alloc]initWithFrame:CGRectZero  reuseIdentifier:CellIdentifier]autorelease];
        CGRect frame;
        frame.origin.x = 10; 
        frame.origin.y = 5;
        frame.size.height = 35;
        frame.size.width = 170;


        UILabel *capitalLabel = [[UILabel alloc] initWithFrame:frame];
        capitalLabel.tag = CapitalTag;

        [cell.contentView addSubview:capitalLabel];



        frame.origin.x += 175;
        UILabel *stateLabel = [[UILabel alloc] initWithFrame:frame];
        stateLabel.tag = StateTag;
        [cell.contentView addSubview:stateLabel];

        frame.origin.x += 180;
        UILabel *stateLabel1 = [[UILabel alloc] initWithFrame:frame];
        stateLabel1.tag = StateTag1;
        [cell.contentView addSubview:stateLabel1];


        frame.origin.x += 190;
        UILabel *stateLabel2 = [[UILabel alloc] initWithFrame:frame];
        stateLabel2.tag = StateTag2;
        [cell.contentView addSubview:stateLabel2];


    }
    UILabel *capitalLabel = (UILabel *) [cell.contentView viewWithTag:CapitalTag];
    UILabel *stateLabel = (UILabel *) [cell.contentView viewWithTag:StateTag];
    UILabel *stateLabel1 = (UILabel *) [cell.contentView viewWithTag:StateTag1];
    UILabel *stateLabel2 = (UILabel *) [cell.contentView viewWithTag:StateTag2];

    capitalLabel.text=[a objectAtIndex:indexPath.row];
    stateLabel.text = [b objectAtIndex:indexPath.row];
    stateLabel1.text = [c objectAtIndex:indexPath.row];
    stateLabel2.text = [d objectAtIndex:indexPath.row];


    return cell;
}

Эта таблица вызывается автоматически, я не хочу вызывать эту таблицу автоматически.

Я хочу назвать этот просмотр таблицы программно.

Как мне позвонить ??

1 Ответ

0 голосов
/ 21 декабря 2011

Вы должны вызывать его из метода didload при запуске приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...