Мой вопрос о методе setNeedsDisplay, который находится в моем подклассе UIView, который не вызывает drawRect в том же классе.setNeedsDisplay в подклассе UIView (в ipad Splitview), не вызывающем drawRect
Я разрабатываю приложение Ipad для отображения графика X Y (декартовой плоскости), где пользователь может вводить координаты для точек. (например: 2,4 и 2,8: это должна быть прямая вертикальная линия). Я использовал приложение «Мастер-детали» (так что контроллер с раздельным представлением).
1) Первоначально drawRect в подклассе UIView рисует начальную сетку. Мне нужно добавить строки «на лету» в сетку, когда пользователь добавляет новые точки (значения x, y)
2) И после ввода значений x и y (в MasterViewController) я звоню метод обновления точки в UIView подкласса (GridView), как следующее:
- (void) updateGrid
{
// this is a mutable array of newly created points
self.gridview.pointList = self.pointList;
[self.gridview redrawGrid];
}
3) у меня есть setNeedsDisplay в методе «redrawGrid» в подкласс UIView (GridView) для вызова DrawRect для того, чтобы перерисовать сетка с новыми точками данных.
Благодарим за быстрый ответ. Но да, я пытался поставить точки останова в метод drawRect, но не повезло. это мой метод redrawGrid в подклассе UIView (gridview.m): - (void) redrawGrid { [self setNeedsDisplay]; } –
@ ChhristinaWatson О, я вижу, вы действительно приняли ответ. В чем была проблема? – Sulthan
проблема «setNeedsDisplay», похоже, не вызывает функцию drawRect. Не уверен, что мой подход лучше обновить/обновить сетку (которая находится в подробном представлении разделенного вида) –