Приветствую всех.
Я пытаюсь реализовать фреймворк Нейта Вайндера "ShareKit".Все прошло хорошо, до последнего шага.
У меня есть общая кнопка настройки в Interface Builder с именем "shareBtn"
В моем .h у меня есть:
-(IBAction)shareBtn;
В моем .m я настраиваю общий (рабочий) UIActionSheet:
Наверх Я использую ShareKit Framework: #import "SHK.h"
Для моей кнопки у меня есть это:
-(IBAction)shareBtn {
UIActionSheet *actionsheet = [[UIActionSheet alloc]
initWithTitle:@"Which do you prefer?"
delegate:self
cancelButtonTitle:@"Cancel"
destructiveButtonTitle:@"Destuctive Button"
otherButtonTitles:@"Button 1", @"Button 2", @"Button 3", nil
];
[actionsheet showInView:[self view]];
[actionsheet release];
}
-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
{
NSLog(@"button %i clicked", buttonIndex );
}
Это прекрасно работает и отлично.Теперь, в соответствии с инструкцией на странице установки ShareKit, я должен поместить этот код, чтобы подключить лист действий к платформе sharekit:
- (void)myButtonHandlerAction
{
// Create the item to share (in this example, a url)
NSURL *url = [NSURL URLWithString:@"http://getsharekit.com"];
SHKItem *item = [SHKItem URL:url title:@"ShareKit is Awesome!"];
// Get the ShareKit action sheet
SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];
// Display the action sheet
[actionSheet showFromToolbar:navigationController.toolbar];
}
Это кажется довольно простым, и я поиграл с синтаксисом aнемного (используя self.toolbar и т. д.), и я просто изо всех сил пытаюсь понять концепцию и то, что мне не хватает.Я прочитал документацию для iOS по этому вопросу, я сослался на несколько книг, которые у меня есть, и много занимался поиском в Интернете.
Просто надежда может увидеть очевидную ошибку или помочь мне немного помочь.
Спасибо.
Вот что я пробовал и ошибки:
Первая попытка
-(IBAction)shareBtn {
// Create the item to share (in this example, a url)
NSURL *url = [NSURL URLWithString:@"http://getsharekit.com"];
SHKItem *item = [SHKItem URL:url title:@"ShareKit is Awesome!"];
// Get the ShareKit action sheet
SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];
// Display the action sheet
[actionSheet showFromToolbar:navigationController.toolbar];
}
ОШИБКА: 'неопознанный навигационный контроллер'
/////// Вторая попытка ///////
-(IBAction)shareBtn {
// Create the item to share (in this example, a url)
NSURL *url = [NSURL URLWithString:@"http://getsharekit.com"];
SHKItem *item = [SHKItem URL:url title:@"ShareKit is Awesome!"];
// Get the ShareKit action sheet
SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];
// Display the action sheet
[actionSheet self.toolbar];
}
////// ОШИБКА: «Ожидается»] «до».token '//////////
/////// Третья попытка ///////
-(IBAction)shareBtn {
// Create the item to share (in this example, a url)
NSURL *url = [NSURL URLWithString:@"http://getsharekit.com"];
SHKItem *item = [SHKItem URL:url title:@"ShareKit is Awesome!"];
// Get the ShareKit action sheet
SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];
// Display the action sheet
[actionSheet self.toolbar];
}
////// ОШИБКА: 'Ожидается'] 'до'. 'token '//////////
/////// Четвертая попытка ///////
-(IBAction)shareBtn {
UIActionSheet *actionsheet = [[UIActionSheet alloc] init];
// Create the item to share (in this example, a url)
NSURL *url = [NSURL URLWithString:@"http://getsharekit.com"];
SHKItem *item = [SHKItem URL:url title:@"ShareKit is Awesome!"];
// Get the ShareKit action sheet
SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];
// Display the action sheet
[actionsheet showInView:[self view]];
[actionsheet release];
}
////// ОШИБКА: Неиспользуемая переменная 'actionSheet' ////////// ////// Приложение запускается, но как только всплывает лист действий, оно падает ///////
К вашему сведению: Страница установки ShareKit: [url = http://www.getsharekit.com/install/]ShareKit: Установить [/ url]
ТАКЖЕ: Я сейчас нахожусь в процессе чтения "Руководств по ранчо для больших ботаников - Программирование для iPhone".
Как способ обучения, я пытаюсь применить некоторые концепции, которые я изучал (некоторые из которых выходят за рамки моих текущих знаний).Я обычно понимаю конкретные ошибки, но не знаю, как реализовать это действие.
Что меня смущает в этом actionSheet, так это то, что он отлично работает с первым методом, который я изучил.Сейчас я пытаюсь расширить эти знания, используя платформу ShareKit Framework и заставляя ее выполнять.Это кажется очень прямым, и я просто очень обескуражен ...
Вот установка ShareKit (она говорит "В трех простых строках кода") ШАГ 4: http://www.getsharekit.com/install/