#iphone #xcode #uiscrollview #ios5
#iPhone #xcode #uiscrollview #ios5
Вопрос:
У меня большая проблема. Я создаю приложение с UITableView, где UIScrollView находится внутри каждой ячейки. Управление страницей UIScrollView включено и реализовано как пример по умолчанию в библиотеке разработчика Apple.
И даже если в примере Apple все работает нормально, у меня проблема с моей программой. Каждый раз, когда я обновляю содержимое UIView, которое в данный момент не представлено в UIScrollView (например, UIScrollView находится на странице 1, и я обновляю содержимое UIView на странице 2), UIScrollView автоматически прокручивается до этого представления (с анимацией). Интересно, что прокрутка останавливается где-то между этими двумя представлениями.
Итак, это мой код:
if (controller.view.superview == nil)
{
CGRect frame = scrollView.frame;
frame.origin.x = frame.size.width * page;
frame.origin.y = 0;
controller.view.frame = frame;
[scrollView addSubview:controller.view];
[controller.label setText:@"some text"];
}
И если я сделал это в примере Apple, все работает нормально, в моем коде (где UIScrollView находится внутри UITableViewCell) он автоматически прокручивается в какую-то странную позицию.
Есть идеи?
Комментарии:
1. Почему вы должны обновлять представление, которое не видно?
2. Потому что новый контент должен быть представлен в представлении, когда пользователь начнет прокрутку. Это стандартная процедура в примере управления подкачкой от Apple.
3. Вы нашли решение? Я работаю над приложением, у которого есть эта проблема на iOS5, а не на iOS6….
Ответ №1:
почему, потому что, если вы перемещаете parentviewcontroller, автоматически перемещаются и дочерние классы.Итак, снова установите рамку для uiscrollview
Комментарии:
1. Я вас не понимаю. Я не перемещаю родительский элемент UIScrollView, я ничего не перемещаю. Я просто меняю текст UILabel внутри UIView внутри UIScrollView. И из-за этого UIScrollView автоматически прокручивается с анимацией в некоторой неопределенной позиции.