Проведите, чтобы изменить взгляды - PullRequest
5 голосов
/ 08 февраля 2011

Легко ли написать следующий код?

У меня есть табличное представление, и когда пользователь выбирает ячейку, загружается подробное представление.Я хочу, чтобы пользователь мог перемещаться по элементам / подробному представлению, представляющим элементы в виде таблицы, с помощью левого и правого пролистывания, работая так же, как, например, домашний экран iphone (например, при перелистывании одна страница движетсяза кадром и появляется следующее).

Я видел, как это реализовано в MobileRSS-APP, так что это возможно, но мне просто трудно найти способ сделать это правильно.

Спасибо за миллион заранее!Я все еще пытаюсь найти свои ноги с прикосновением какао ...

Ответы [ 2 ]

2 голосов
/ 08 февраля 2011

Это не секрет, Apple предоставляет пример кода под названием PageControl , который демонстрирует именно то, чего вы хотите достичь:

Это приложение в основном демонстрирует использование функциональности подкачки UIScrollViewиспользовать горизонтальную прокрутку в качестве механизма для навигации по различным страницам контента.

Я реализовал это в во многих моих приложениях .

2 голосов
/ 08 февраля 2011

Главный экран iphone (трамплин) работает с включенным режимом прокрутки для просмотра прокрутки.

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,self.view.frame.size.width, self.view.frame.size.height)];
[scrollView setPagingEnabled:YES];

Затем, допустим, есть две страницы приложений, которые нужно пролистать - вы устанавливаете размер содержимого представления прокрутки, равный удвоенной ширине представления:

[scrollView setContentSize:CGSizeMake(self.view.frame.size.width*2, self.view.frame.size.height)];

И вот как это делается. :) Я не знаю, так ли это для MobileRSS-APP.

Что нужно иметь в виду:

  1. Это не стандартный способ работы табличного представления. Вы можете отклонить ваше приложение от Apple. Табличное представление должно работать, нажимая.

  2. Вероятно, вы могли бы воспроизвести функциональность, не используя представление прокрутки, используя методы касаний и контроллер навигации. Хорошее учебное пособие, описывающее, как обнаружить пролистывания на вашем экране, находится здесь: http://www.dosomethinghere.com/2009/07/23/simple-swipe-detection-in-the-iphone-sdk/

В последнем методе в этом уроке, где есть NSLog («пролистывание вправо»), вы можете заменить его на [self.navigationController popViewControllerAnimated:YES], который будет повторять нажатие кнопки «назад» на панели навигации.

Я не знаю, что вы могли бы сделать для пролистывания влево, хотя ..... если вы хотите сделать это в табличном представлении, вам придется выполнить некоторые сложные математические операции, определяющие, как далеко было прокручено табличное представление. Или вы можете проверить сенсорные события на самих клетках, но это то, что вы должны изучить. :)

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