私は記事のタイトルと記事のURLをtwitterに投稿し、つぶやきの最後にそのアプリの名前を追加しようとしています。だから、SLComposeViewControllerを使用してTwitterに投稿できないのはなぜですか?
のようなものは添付URL「方法(@appname経由)サボテンを成長させる」
私が確認するために、タイトルやURLの長さのバランスを取る方法を考え出すのトラブルを抱えていましたつぶやきが140文字を超えないこと。したがって、URLが本当に長い場合は、記事タイトルの一部を切り捨てて、140文字未満にすることができます。
彼らはこの部分を述べるTwitter's guidelines for SLComposeViewController
を見る:初期の内容を設定するための方法は、ブール値で応答することを
注意を。これにより、開発者は、初期化しているTweet本体の現在の文字数を気にする必要がなくなります。メソッドがYESを返す場合、コンテンツを追加するのに十分な余地がありました。メソッドがNOを返した場合、追加しようとしたコンテンツは、140文字を超えるTweetになります。文字カウントのロジックは、t.co URLラップに必要な現在の文字数も有効にします。
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter]) { SLComposeViewController *twitterViewController = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter]; [twitterViewController addURL:[NSURL URLWithString:self.article.url]]; NSString *titleToShare = self.article.title; while ([twitterViewController setInitialText:[NSString stringWithFormat:@"%@ (via @SyllableApp)", titleToShare]]) { titleToShare = [titleToShare substringToIndex:titleToShare.length - 1]; } [self presentViewController:twitterViewController animated:YES completion:nil]; }
基本的には:(。「コード例」セクションから)
があることを考えると、私はURLの長さと品の長さをつぶやきを構築し、バランスをとるために、次のコードを書きましたsetInitialText:
メソッドをループしてYES
を返すようにURLを追加し、必要な長さに近づくためにNO
を返すたびにタイトルの長さを1減らします。
ただし、YESを返すことはありません。私が知っているときでも、それはすべきです。私はタイトルが105文字で、URLが55で、アプリのクレジットがあるので、潜在的に140文字を超える可能性のある記事を1つ使用していました。理論的には、タイトルを短くしてからうまく追加できるはずですが、決してそれは起こりません。
何が起こっているのですか? SLComposeViewController
とのリンクをどのように達成できますか?
サンプルプロジェクトをシミュレータとiPhone 5Sで実行し、両方のケースで(アニメーションが実行されている間に)Xcodeによって0%のCPUが報告されました。たぶんあなたは何かを再起動する必要があります(Xcode、デバイス、内線)? –
バグです:http://openradar.appspot.com/14273967 –