В этом уроке мы рассмотрим создание файла настроек (settings bundle), отображаемого в меню Settings. Вот что мы получим на выходе в окне Application Preferences:

Настройки приложения хранятся в plist-файле. Для начала создадим новый бандл, в состав которого войдет plist-файл. Для выполнения перечисленных ниже шагов необходимо открыть проект в XCode.
Выберите файл проекта в XCode (в проводнике файлов слева) и выполните File -> New File. Щелкнув на меню, выберите Settings Bundle, затем Next. Присвойте файлу имя и подтвердите кнопкой Finish. Продолжить чтение »
В этом уроке мы создадим приложение на основе представления (view-based), работающее исключительно в альбомной ориентации (landscape-mode only) (экран по ширине больше, чем по высоте) вместо привычной книжной (где экран выше и уже).
Создаем новое view-based приложение.
Откройте Xcode.
Создайте новый проект iPhone OS Project, выполнив File -> New Project…

Убедитесь, что пункт “Application” (Приложение) относится к меню “iPhone OS“, затем выберите “View-Based Application“.
Щелкнув на кнопке “Choose...”, наберите в поле “Save As:” название “LandscapeOnlyViewBasedTutorial“, подтвердив его кнопкой “Save“. Продолжить чтение »
Предполагается, что читатель уже имеет определенное представление о среде разработки приложений iPhone SDK (при необходимости можно скачать ее бесплатно отсюда http://developer.apple.com/iphone/). В этот раз наша задача — создать программу для чтения простой RSS-ленты (разумеется, это будет The Apple Blog).

Начинаем.
- Откройте Xcode, перейдите в меню “File” и щелкните на элементе “New Project…“.
- В списке слева под меню “iPhone OS” щелкните на “Application“.
- Справа выберите “Navigation-Based Application“, затем воспользуйтесь кнопкой “Choose…“. Теперь нужно выбрать имя и путь. Наберите название “TAB RSS reader“.
- Сохраните проект, куда сочтете нужным. Продолжить чтение »
Введение.
В этом обучающем материале я дам Вам краткое введение о том, как начать писать своё первое iPhone приложение. Для начала Вам потребуется последняя версия iPhone SDK, которую можно загрузить отсюда. С SDK Вы получаете некоторые сервисные программы, такие как Xcode, Interface Builder (конструктор интерфейса), iPhone simulator (симулятор iPhone) и многие другие. Первое приложение обычно называют “Hello World”, но я назвал своё первое приложение “Hello Universe”, потому как революционное устройство требует смены имени.
Цель приложения “Hello Universe”.
Используя это приложение, пользователь сможет ввести его/ее полное имя и, нажав на соответствующую кнопку, увидеть появившееся сообщение вида “John Doe says Hello Universe!!!” (Джон До говорит Привет Вселенной!!!). Данное приложение даст Вам не только представление о некоторых сервисных программах, но также покажет, как можно использовать средства управления, отвечать на события и создавать новые визуальные объекты. Продолжить чтение »
Приветствую в четвертой, заключительной части урока, где мы освоим панорамирование — перемещение изображения влево–вправо. Здесь мы частично будем работать с подготовленным в предыдущих материалах кодом.
Наша задача — сделать так, чтобы изображение сдвигалось влево или вправо, когда пользователь, нажав на него, перемещает по экрану палец. Для этого воспользуемся методом touchesMoved, исходный код для которого будет выглядеть так:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
if([timer isValid])
[timer invalidate];
NSSet *allTouches = [event allTouches];
switch ([allTouches count])
{
case 1: {
//Изображение панорамируется (смещается влево/вправо)
UITouch *touch = [[allTouches allObjects] objectAtIndex:0];
CGPoint centerPoint = [touch locationInView:[self view]];
[imgView setCenter:centerPoint];
} break;
case 2: {
//Изображение увеличивается или уменьшается.
UITouch *touch1 = [[allTouches allObjects] objectAtIndex:0];
UITouch *touch2 = [[allTouches allObjects] objectAtIndex:1];
//Рассчитывается расстояние между двумя пальцами.
CGFloat finalDistance = [self distanceBetweenTwoPoints:[touch1 locationInView:[self view]]
toPoint:[touch2 locationInView:[self view]]];
//Проверка на увелечение/уменьшение.
if(initialDistance > finalDistance) {
NSLog(@"Zoom Out");
}
else {
NSLog(@"Zoom In");
}
} break;
}
} |
Продолжить чтение »
В этом уроке я покажу, как с помощью события touchesMoved увеличивать и уменьшать изображение в UIImageView. Пока я еще не подготовил точного кода для этих операций, но есть код, указывающий, когда именно наступает масштабирование. Если кто-то уже знает, как увеличивать и уменьшать изображение, поделитесь этим с нами.
Перед тем, как приступить к внедрению события touchesMoved, задекларируем ряд переменных и методов в файле ImgViewController.h. Вот как после этого будет выглядеть заголовочный файл:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| #import
@interface ImgViewController : UIViewController {
IBOutlet UIImageView *imgView;
NSTimer *timer;
CGFloat initialDistance;
}
- (CGFloat)distanceBetweenTwoPoints:(CGPoint)fromPoint toPoint:(CGPoint)toPoint;
- (void) clearTouches;
@end |
Несложно догадаться, что посредством disanceBetweenTwoPoints вычисляется расстояние между двумя точками. С помощью initialDistance отслеживается расстояние, на котором срабатывает метод touchesBegan. Продолжить чтение »
Во второй части я расскажу о работе с событием touchesBegan (обязательно прочтите [первую статью] серии и загрузите исходный код).
В файл ImgViewController.m внедряем следующий метод:
1 2
| - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
} |
Он отвечает за вывод предупреждения в случае касания изображения в течение более чем 2 сек. Вот как будет выглядеть исходный код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
NSSet *allTouches = [event allTouches];
switch ([allTouches count]) {
case 1: { //Одно касание
//Получение первого касания.
UITouch *touch = [[allTouches allObjects] objectAtIndex:0];
switch ([touch tapCount])
{
case 1: //Одно нажатие.
{
//Запускается таймер на 2 сек.
timer = [NSTimer scheduledTimerWithTimeInterval:2 target:self
selector:@selector(showAlertView:) userInfo:nil repeats:NO];
[timer retain];
} break;
case 2: //Двойное нажатие
break;
}
} break;
case 2: { //Двойное нажатие
} break;
default:
break;
}
} |
Продолжить чтение »
На первом уроке освоим масштабирование изображения с приближением и удалением. Вот как будет выглядеть наше приложение:

Для начала выполните перечисленные ниже шаги.
- Создайте новый проект, выбрав “Windows-based Application“.
- В редакторе IB (Interface Builder) создайте новый элемент UIView, присвоив ему имя ImgView.
- В XCode создайте новый файл, выполнив File -> New File -> UIViewController sub class и назовите его “ImgViewController“. Продолжить чтение »
Последние комментарии
Всем ! Заходите на Фан-Футбол...
Windows Phone MarketPlace -...
Планируем приобрести дробемет и...
Как добавить в...
currentTitle = [[NSMutableString alloc] init];...