TTNavigator サンプル コードを作成して、タブの 1 つを Web ビューや YouTube ビデオなどに直接表示するにはどうすればよいですか? ここに現在のコードがあります http://pastie.org/626186
1 に答える
まず、アプリケーションで URL のディスパッチを制御するために使用できるクラスは TTURLMap です。TTNavigatorDemo の AppDelegate.m ファイルで、既にどのように設定されているかを確認できます。
ここでの秘訣は、TTURLMap を設定するときにワイルドカードを使用できることです。コントローラ クラスに「*」ワイルドカードを設定することで、本質的には、TTURLMap に、それ以外の場合は一致しないすべてのリクエストを、渡したコントローラ クラス (この場合は TTWebController) の新しいインスタンスにディスパッチするように指示します。
TTURLMap* map = navigator.URLMap;
[map from:@"*" toViewController:[TTWebController class]];
[map from:@"tt://someController" toViewController:[SomeController class]];
...
if (![navigator restoreViewControllers]) {
[navigator openURL:@"tt://someController" animated:NO];
}
TTNavigatorDemo を確認したところ、実際には既にセットアップされているようです。
// Any URL that doesn't match will fall back on this one, and open in the web browser
[map from:@"*" toViewController:[TTWebController class]];
したがって、Gist では、このようにデータ ソースに行を追加して、Web ビュー コントローラーを使用して任意の URL にアクセスできるはずです。これをタップすると、Google で新しい TTWebController がプッシュされます。
[TTTableTextItem itemWithText:@"Google" URL:@"http://google.com"],
さらに読む: NavigatorDemo は、いくつかの非常に優れた処理を行います。Three20 Google Group の誰かが、TTURLMap のセットアップで起こっていることをすべて解き明かしていたときにメモを公開しました。