2012-03-11 5 views
1

В основном мне нужно поместить кнопку между ячейками. У меня есть сгруппированный UITableView с двумя ячейками. Я не могу получить это с помощью Interface Builder. Как я могу получить это по коду?UIButton между двумя UITableViewCell

enter image description here

+0

ли это на самом деле должно быть две клетки, или вы можете поместить фоновое изображение на одной (большой) клетке, заставляет его ПОСМОТРЕТЬ как две ячейки, а затем позиционировать кнопку именно там, где вы хотите? – lnafziger

ответ

0

Решение очень просто. Просто создайте кнопку, установите ее фрейм правильно и добавьте в self.tableview в свой подкласс UITableViewController.

Например:

viewDidLoad() из RootViewController (подкласс UITableViewController)

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    button.frame = CGRectMake(0, 30, 50, 50); // May change as needed 
    [self.tableView addSubview:button]; 
} 
0

Если у вас есть только две ячейки, почему вы с помощью сгруппированных UITableView вместо ваших собственных взглядов на заказ. Я считаю, что простым решением было бы просто создать два пользовательских представления. Один, который представляет две ячейки, а другой - меньший вид сверху клеток.

Если причина вы используете TableView в том, что эта конструкция будет использоваться повторно, то вы можете создать вышеуказанную реализацию как одного пользовательского UITableViewCell в Interface Builder, то просто загрузите его в cellForRowAtIndexPath:

DevCustomCell *cell = [tableView dequeueReusableCellWithIdentifier:@"DevCustomCell"]; 
if (cell == nil) { 
    NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"DevCustomCell" owner:nil options:nil]; 
    for (id currentObject in topLevelObjects) { 
     if ([currentObject isKindOfClass:[UITableViewCell class]]) { 
      cell = (DevCustomCell *)currentObject; 
      break; 
     } 
    } 
} 
Смежные вопросы