この時点で私はかなりイライラしていますが、それは私が見逃しているものだと確信しています. このコードでは、残りの関数が実行された後に、新しい viewController へのセグエが表示されます。viewController を実行中のコードにするにはどうすればよいですか? 基本的に、そのビューが閉じられるまで tweetText 関数が発生しないようにします。複数の Twitter アカウントがある場合は、ユーザーが twitter アカウントを選択できるようにしようとしています。私は多くの異なる方法を試しました。Apple 独自のコード例では、ユーザーにオプションを提供することを提案していますが、コードの残りの部分を吹き飛ばさずにそれを行う方法については何も提供していません。
コードは次のとおりです。
[accountStore requestAccessToAccountsWithType:accountType withCompletionHandler:^(BOOL granted, NSError *error) {
if(granted) {
dispatch_sync(dispatch_get_main_queue(), ^{
// Get the list of Twitter accounts.
self.accountsArray = [accountStore accountsWithAccountType:accountType];
if([self.accountsArray count] > 1 /* Check method to see if preference is still a valid account */) {
// Display user accounts if no preference has been set
[self performSegueWithIdentifier:@"TwitterAccounts" sender:self.accountsArray];
[tweet tweetText:tweetString account:self.twitterAccount type:AchievementTweet];
} else {
[tweet tweetText:tweetString account:[self.accountsArray lastObject] type:AchievementTweet];
}
});
} else {
[tweet performSelectorOnMainThread:@selector(displayText:) withObject:[NSNumber numberWithInt:403] waitUntilDone:NO];
}
}];