Я хочу сделать вкладку маленького игрока над моим табличным представлением, поэтому он всегда должен скрываться, только с небольшой видимой строкой 1px, например, в приложении заметок, и когда вы прокрутите вверх, он должен появиться, но оставайтесь на вершине, а не вниз, как и все ячейки в виде таблицы. Он не может быть заголовком, потому что он всегда видимый, и он не может быть ячейкой, потому что он должен быть сверху. Так что я хочу делать все как в приложении заметок, как я могу это сделать? СпасибоСоздание затухающего заголовка в виде таблицы, как в заметках app
0
A
ответ
1
Вот моя идея.
- Добавить
UITableView
иUIImageView
в качестве подвидов из нижележащегоUIView
.UIImageView
экземпляр представляет собой представление «строка/полоса» (как вы его называете) - Создайте прототипы двух ячеек. Один для нормальной ячейки и один для ячейки заголовка.
- Для первой ячейки (
indexPath.row == 0
) всегда используйте прототип ячейки заголовка. Для других клеток используйте прототип нормальных клеток. - В
viewWillAppear
, всегда прокручивать во второй ряд, используя[UITableView scrollToRowAtIndexPath:atScrollPosition:animated:]
Ниже приведен мой пример фрагмента кода. (Он работал, как я ожидал, по крайней мере)
- (void)viewDidLoad
{
[super viewDidLoad];
self.tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, 320, 480) style:UITableViewStylePlain];
self.tableView.dataSource = self;
self.tableView.delegate = self;
[self.view addSubview:self.tableView];
self.overlayView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"stripe.png"]]; // This is an image with stripe with transparent background
self.overlayView.frame = CGRectMake(0, 0, 320, 10);
[self.view addSubview:self.overlayView];
}
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
NSIndexPath * indexPath = [NSIndexPath indexPathForRow:1 inSection:0];
[self.tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionTop animated:NO];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
// It is important that the table has enough rows to scroll. Otherwise, [UITableView scrollToRowAtIndexPath...] will not take effect.
return 20;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell * cell;
if(indexPath.row == 0)
{
// This is an example of header cell
cell = [tableView dequeueReusableCellWithIdentifier:@"topCell"];
if(!cell)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"topCell"];
[cell.textLabel setText:@"This is the play tab"];
}
}
else
{
// This is an example of normal cell
cell = [tableView dequeueReusableCellWithIdentifier:@"normalCell"];
if(!cell)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue2 reuseIdentifier:@"normalCell"];
}
[cell.textLabel setText:[NSString stringWithFormat:@"Data at : %d", indexPath.row - 1]];
[cell.detailTextLabel setText:@"A normal cell."];
}
return cell;
}
0
Я считаю, что есть только один способ достижения этого эффекта. Вы должны использовать метод scrollViewDidScroll:. Вы кладете подзаголовок на свой стол и вычисляете соответствующие координаты для него каждый раз, когда прокручивается таблица. Было бы немного утомительно описывать все возможные условия, но нет ничего сложного.
Смежные вопросы
- 1. Создание таблицы с выбранным параметром в виде заголовка таблицы SQL
- 2. Создание геометрически затухающего цикла паузы
- 3. замораживания заголовка в виде таблицы в HTML
- 4. ExtJS: Создание изображения в виде заголовка столбца
- 5. Заголовок заголовка UITableView, отображающийся в виде заголовка таблицы
- 6. Создание таблицы в виде Excel в vb.NET
- 7. Создание сетки в виде таблицы в браузере
- 8. Создание таблицы HTML с вертикально ориентированным текстом в виде заголовка таблицы
- 9. Как перевести содержимое div в виде заголовка таблицы?
- 10. Как изменить цвет заголовка раздела в виде таблицы?
- 11. Динамическое создание заголовка таблицы над заголовком таблицы
- 12. Создание строки заголовка таблицы ASP.NET
- 13. Создание новых заметок в заметках Apple с прикрепленным PDF-файлом
- 14. Создание таблицы данных SQL в виде таблицы Excel
- 15. разная высота заголовка секции в сгруппированном виде таблицы
- 16. Представления Drupal, название узла узла в виде заголовка таблицы
- 17. UISearchController не будет находиться наверху в виде заголовка таблицы
- 18. Используйте наконечник в виде заголовка секции таблицы с nib-классом
- 19. Использование пользовательского заголовка Кнопка для изменения раздела в виде таблицы?
- 20. Как получить данные из таблицы в базе данных и показать в виде виджета заголовка?
- 21. Стиль таблицы, как в напоминаниях ios5 app
- 22. Каков цвет текста заголовка/нижнего колонтитула в виде таблицы?
- 23. Как добавить изображение в виде заголовка в угловой сетке ui?
- 24. Анимация в виде таблицы
- 25. Как добавить изображение в виде заголовка PDF?
- 26. как изменить текст заголовка в виде сетки
- 27. Octopress: Как вставить логотип в виде заголовка?
- 28. Создание нескольких разделов в виде таблицы в iphone
- 29. Показать результаты в виде таблицы в виде
- 30. Создание статического заголовка таблицы с ScrollView
Не думайте, что это должно работать так, как я хочу. Будет ли он исчезать, lrepeaving только одна маленькая строка. И почему вы думаете, что он не прокрутит вниз? –
Если вы укажете 'NO' последнему параметру' [UITableView scrollToRowAtIndexPath: atScrollPosition: анимированный:] ', тогда при появлении анимации« прокрутки »он не будет. Он отобразит таблицу только со второй строки, как если бы вторая строка была верхней строкой. Но я пропустил строку на верхней части. Я отредактирую свой ответ соответственно. – barley
Но когда пользователь сделает это, вытащите табличный вид, эта ячейка тоже прокрутится вниз, не так ли? Но я не хочу, чтобы это произошло. Я хочу, чтобы он оставался там, как в заметках. Если он был частью навигационной панели –