2011-12-20 2 views
2

мне нужно создать сгруппированные Tableview Controller некоторых вещи, похожие на this imageUITableView, добавив сгруппированный стиль и добавление сегментам

я определил, что это TableView имеет 2 сегментов, поэтому я добавил 2 сегментов и 2 строки каждые для каждого сегмента.

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

if(section == 0) return 2; 
else return 2; 
} 

1.) Проблема у меня есть, как добавить ярлык поверх 1-го сегмента таблицы.

Мне нужно добавить две кнопки между двумя группами (таблицы), я знаю, как добавить одну кнопку, но как добавить 2?

- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { 
    if (section == 0) { 
     UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
     [button setTitle:@"Hello" forState:UIControlStateNormal]; 
     // How to add the 2nd button ? 
     return button; 
    } 
    return nil; 
} 

3.) Когда я добавил представление таблицы группы с 2-х сегментов, я не получил закругленные края в клетках, как я могу получить это?

4.) Мне нужно иметь функцию редактирования (чтобы я мог удалять записи) ТОЛЬКО для второго сегмента. Поэтому, когда я нажимаю кнопку редактирования, я должен удалять записи только на втором сегменте. Это возможно ? если да, то как это сделать?

+1

Вот ссылка на класс, нажмите ctrl + f и введите сгруппированные, затем нажмите enter. Вы увидите документацию по таблице ... http://developer.apple.com/library/ios/#documentation/uikit/reference/UITableView_Class/Reference/Reference.html – Gabe

+2

Ваш ответ не поможет. Спасибо, в любом случае, я уже просмотрел его! – Illep

+0

@lllep, поэтому его комментарий, а не ответ^_^ – Gabe

ответ

0

1) Что касается этикетки, вы пытаетесь добавить ярлык прямо над ним или непосредственно поверх него? Попробуйте это, я не уверен, правильно ли синтаксис, но если вы возитесь с ним, он должен работать.

UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 20, w, h)]; 
[titleLabel setText:@"TITLE"]; 
[**your UITableView** addSubview:titleLabel]; 
[self.view addSubview:**your UITableView**]; 
[titleLabel release]; 

3) круглые края ... Я не слишком уверен в этом, но это либо 1. Ваша версия Xcode, возможно, круглые края в новой/старой версии Xcode так вы можете необходимо обновить ... 2. В этом примере они используют пользовательский табличный вид, который они сами создали, или его другой тип UITableView.

4) Вы можете иметь логическую функцию, которая проверяет разрешения, например, если пользователь нажал ту или иную часть, проверяет функцию boolean, это может быть использовано для отключения/включения части редактирования вашей функции.

+0

Мне нужно добавить ярлык, как показано на картинке. Выше 1-го отрезка таблицы – Illep

1
  1. Я предполагаю, что вы говорите об заголовке раздела? В этом случае используйте метод делегата TableView titleForHeaderInSection

  2. Не используйте Нижний колонтитул для добавления кнопок. Если вам нужны кнопки «между ячейками», просто создайте новый раздел без заголовка заголовка и одной строки до двух строк и поместите кнопки в виде частей строк.

  3. Убедитесь, что стиль Tableview установлен правильно:

    initWithStyle: UITableViewStyleGrouped];

  4. Использовать метод делегата tableview canEditRowAtIndexPath разрешить/запретить редактирование (удаление) ячейки.

+0

Речь идет о вопросе 2. Представьте, что у меня есть 3 сегмента, и у меня есть фиксированное количество ячеек в первых двух разделах. В третьем разделе может быть много клеток. Поэтому мне нужно будет прокрутить представление, чтобы спуститься. и снова о вопросе 4, мне нужно только удалить строки из 3-го раздела, так что это можно сделать с помощью canEditRowAtIndexPath? Что я хочу сделать, это добавить прокрутку только к 3-му сегменту и сохранить оставшиеся сегменты без прокрутки. Это возможно ? – Illep

+0

Можете ли вы показать мне пример кода, как добавить 2 кнопки в titleForHeaderInSection. Я смог добавить 1 кнопку в viewForFooterInSection. Но не удалось добавить 2 кнопки – Illep

+0

Вы не можете сделать это легко (я ничего не знаю). Тем не менее, вы можете иметь два разных TableViews в одном представлении, но вам необходимо передать на аутсорсинг методы источника данных и делегирования. Проверьте это сообщение SO: http://stackoverflow.com/questions/254354/uitableview-issue-when-using-separate-delegate-datasource –

Смежные вопросы