Кривая обучения для разработки iPhone была менее крутой, чем я ожидал. После нескольких уроков и отличной книги Apress «Начало разработки iPhone 3» дела пошли совершенно нормально. И, конечно же, когда я застрял, этот форум очень помог. До сих пор я никогда не занимался «графическим» программированием ни на одной платформе, над которой работал в прошлом, так что для меня это вообще неизведанная территория, в частности, для iPhone. Мне пока не удалось найти отличный источник информации, поэтому я надеюсь, что некоторые из них могут либо помочь мне напрямую, либо точно указать мне источник (книгу, сайт) с валхаллой рисования;)
Я хочу сделать диаграмму Ганта, подобную рисованию. На блоках должен быть текст, объясняющий, что это за блок, и кнопка (пользовательская форма, например, звезда), на которую пользователь может нажать. При переключении кнопка должна изменить цвет.
Я смог найти и опробовать: создайте отдельное представление, а затем внедрите этот код в это представление:
- (void)drawRect:(CGRect)rect {
//Get the CGContext from this view
CGContextRef context = UIGraphicsGetCurrentContext();
//Draw it
CGContextStrokePath(context);
//Draw a rectangle
CGContextSetFillColorWithColor(context, [UIColor redColor].CGColor);
//Define a rectangle
CGContextAddRect(context, CGRectMake(40.0, 10.0, 100.0, 60.0));
//Draw it
CGContextFillPath(context);
}
Пока все хорошо, но я застрял сейчас. Мои проблемы:
(0,0) координаты находятся в верхнем левом углу в портретном режиме, но мою диаграмму нужно просматривать в альбомном режиме, и конвертировать все не так просто, поэтому мне было интересно, смогу ли я изменить система координат.
Как нарисовать текст в этом прямоугольнике
Как узнать, что прямоугольник достаточно большой для моего текста
Как создать работающую кнопку в этом прямоугольнике
Менее важно, но пока я спрашиваю ... Как нарисовать более причудливый блок на графике. Текущий блок является простым плоским цветом, но было бы неплохо нарисовать блок немного более похожим на iCal (с градиентами).
большой ТИА !!!