Как разместить текст в правой части заголовка таблицы - PullRequest
1 голос
/ 26 января 2012

В UITableView у нас есть заголовки

Например,

Скажем, я хочу сгруппировать предприятия по зданию, в котором они находятся.

BuildingA 10 Business1 Business2 Business3 Business4

Как мне сделать так, чтобы цифра 10 находилась справа от заголовка

Ответы [ 2 ]

1 голос
/ 27 января 2012

В этом случае вы можете использовать пользовательскую ячейку заголовка, а затем эту ячейку присоединить в заголовке.

для этого следующего кода реализуется.

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

-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
    return 2;
}

-(UIView*)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{
    UIView *v=[[[NSBundle mainBundle] loadNibNamed:@"tHeader" owner:self options:nil] objectAtIndex:0];
    [(UILabel*)[v viewWithTag:1] setText:[NSString stringWithFormat:@"%i",section+1]];
    return v;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return (section==0)?5:((section==1)?7:((section==2)?3:4));
}

// Customize the appearance of table view cells.
- (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] autorelease];
    }

    cell.textLabel.text=[NSString stringWithFormat:@"       Hello-%i",indexPath.row];

    // Configure the cell.
    return cell;
}

Скачать исходный код здесь.

1 голос
/ 26 января 2012

Вы можете переопределить tableView:viewForHeaderInSection:, чтобы добавить свой собственный дополнительный ярлык, прямоугольник которого находится где-то справа, например CGRectMake(280,5,30,20);. Вы также должны установить его так, чтобы текст выровнялся вправо.

Обратите внимание, что если вы сделаете это, вы также должны указать левую метку (так как ее там больше нет), и вы также должны переопределить tableView:heightForHeaderInSection:.

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