2011-12-21 13 views
0

注:問題が解決しました。ありがとうViewControllerでAppDelegateメソッドを使用する

私は単に新しいアプリ開発者プログラムの高校生です。だから、私が少しだけ知っているように見える私を許してください。私はまだ私が知る限り多くは分かりません。私はむしろ空白の画面よりも、自分のアプリケーションでWebViewのためのスタート画面を表示するには、AppDelegateから、次の起動を使用する必要がXD私と一緒に

ベアー:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

// THIS SECTION IS WHAT I NEED 
NSURL *url = [NSURL URLWithString:@"http://www.earlham.k12.ia.us"]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
[webView loadRequest:request]; 


return YES; 

}

使用するにはしかし、私はWebViewにアクセスする必要があります。これはViewController.hで宣言したWebViewオブジェクトです。しかし、それは私がそれを2度宣言することはできませんし、私の知識に他のヘッダーファイルからそれを使用することはできませんので、動作しません。私はそれが可能であることを知っていますが、この基本的なレベルでは、私はどのように知りません。コード例を含めてください。

多くの感謝!

+2

回答者への注意:これは宿題に関する質問です。開発者の世界で一般的な品質を向上させるには、単にコピー/貼り付けできる直接コードではなく、思考を提供するだけです。 –

+2

最終的なプロジェクトで、View Controllerの設定方法がわからないのですか? –

+0

WebViewがViewController.hでどのように宣言されているかを示すことができます。いずれにしても、おそらくそうではないappDelegateに属する変数としてwebViewに脅威を与えます。それがviewControllerに属している場合は、[viewController.webView loadRequest:request]のような記述が必要です。さらに、viewControllerのビューをアプリケーションのviewStackに追加する必要があります。 –

答えて

1

なぜこれをアプリケーションデリゲートに入れますか?これは実際のViewControllerが処理できるはずのもののようです。

+0

開始コーダーとして、私はそれを回避するための専門知識を持っていません。私は流暢なJavaを知っているので、私はコーディングで完全に無能ではない、ちょうどObjective-C – JTApps

+0

だから;私は言い換える。 ViewControllerから起動時にホームページを設定する方法はありますか? – JTApps

+0

UIViewControllerの ' - (void)viewDidLoad'はそれを行うことができます。メソッドを作成してそこにコードを追加するだけです。 –

0

UIWebViewのインスタンスは、UIViewControllerを含む場合のみ管理する必要があります。アプリケーションデリゲートは、ウィンドウのサブビューとして画面上のView Controllerを取得します。そこから、Webビューを適切に管理するのはView Controllerの責任です。

0

私は、このコードがビューコントローラに属し、アプリケーションデリゲートに属してはならないという他の回答に同意します。

あなたのアプリケーションデリゲートのコードにアクセスしたい場合は、自分でdidFinishLaunchingWithOptionsを呼びたくないので、必要なコードを含むメソッドを作成してView Controllerから呼び出す必要があります適切な時にあなたのために呼び出される)。

しかし、一般的には、コード内の責任を分けて、一般的なコードをアプリケーションデリゲートに入れない方がよいでしょう。

関連する問題