問題タブ [viewcontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2274 参照

iphone - iPhoneプログラミングで渡すInter-ViewControllerパラメータ...方法は?

私は読んだ:iPhone:タブバーアプリのいくつかのビューコントローラー間でデータを渡す方法との違いは何ですか?

概念的には、[[UIApplicationsharedApplicaton]デリゲート]がグローバルなものではないことはわかりません。実際、これにより、ダーティグローバル構造体*を使用する際の罪悪感が軽減されます。

私はすぐに新しいプロジェクトを始めています。したがって、この休憩を使用して質問をします。2つのViewController間で(グローバルではなく)データを共有する方法を説明するためのベストプラクティスのコード例はありますか?

例を挙げましょう:

  • これはゲームです
  • プレーヤーの名前を格納するNSString*nameがあります
  • プレーヤーの現在のスコアを保存するNSIntegerスコアがあります
  • GameMainViewControllerが更新され、スコアが表示されます
  • GameSettingViewControllerには、名前を編集するためのテキストフィールドと、スコアをリセットするためのボタンがあります。
  • GameMainViewControllerは、デフォルト名(nilの場合)を設定し、終了時に名前とスコアの両方を保存し、開始時に両方(存在する場合)をロードします。

それで

  • 「名前」と「スコア」はどこに置くべきですか?
  • 両方のViewControllerが値にアクセスして変更するにはどうすればよいですか

ありがとうございました!

0 投票する
2 に答える
1237 参照

iphone - IPhone UIView:サブビューでのみユーザー操作を有効にすることは可能ですか?

ビューを画面にスライドさせるために使用されるボタンを表示するビューコントローラーを作成しました。たとえば、このようなビューコントローラーを 3 つ画面上に配置すると、画面の下部にナビゲーションを提供する 3 つのボタンが表示されます。

ビューコントローラーが積み上げられるため、一番上に他のビュー、つまり他のボタンがオーバーレイされます。この状況では、トップビューコントローラーのボタンのみが機能しています.3つすべてをクリック可能にしたいのですが。ビューでユーザーインタラクションを無効にし、ボタンでのみ有効にしようとしましたが、スーパービューの設定がサブビューの設定を無効にしているようです。

何か案は?

0 投票する
1 に答える
6195 参照

ios - 親View Controllerにアクセスするには?

このコードを使用して、View Controller をプッシュしていますViewControllerA

スライドさせたDatePickerViewController中に、テキストフィールドがあります。ViewControllerAメソッドが起動されたら、このテキストフィールドの値を取得するにはどうすればよいですか?それviewWillDisappearはデータを保存することです。

0 投票する
1 に答える
241 参照

iphone - addsubview を再度呼び出すと速度が低下します

iPhone用の小さな音楽ゲームを書いています。私はほぼ完了しています。これが、私が展開を妨げている唯一の問題です。これを解決するための助けは大歓迎です。

これが私がすることです: 私の appDelegate で、メニュービュースクリーンをウィンドウに追加します。menu-view-screen はコンテナーとして機能し、ユーザーに表示されるビューを制御します。

つまり、メニュー ビュー画面に 4 つのボタン (新しいゲーム、オプション、よくある質問、ハイスコア) が表示されます。ユーザーがボタンをクリックすると、次のようになります。

ユーザーがメニューに戻ると、次のコードが実行されます。

これはすべての画面で正常に機能しますが、ゲーム画面では機能しません (これはユーザー インタラクションが山積みになっている唯一の画面です)。これは、iPhone の応答性 (トーンを再生するとき) が非常に遅くなることを意味します。初めてゲームビューを表示したときのパフォーマンスは良好です。menu-views-container-subviews に再度追加するとすぐに遅くなり始めます (addsubview) (基本的に新しいゲームを開きます) これを引き起こす (または回避する) アイデアはありますか?

ありがとうございます

よろしくトム

0 投票する
2 に答える
337 参照

iphone - ナビゲーションスタックのtableviewcontrollerからviewcontrollerに文字列を渡します

tableviewcellが選択されたときにプッシュされる文字列をViewControllerに渡すにはどうすればよいですか。ビューコントローラでカスタムinitメソッドを作成する必要がありますか?例:[[myvc alloc]initWithURL:...] プロパティを設定しますか?たとえば[myvc setURL:...]、またはmyvc.url = ... 単にカスタムメソッドを作成しますか?[myvc setLoadingURL:...]

0 投票する
2 に答える
1764 参照

iphone - ナビゲーションバーを使用するときにview2からview1に値を返す方法

私はiPhone開発に不慣れです。ナビゲーションバーを使用しているときに、view2からview1に文字列値を運ぶにはどうすればよいですか。pushviewcontrollerを使用してview1からview2、view3、....に文字列値を運ぶのに問題はありませんが、ナビゲーションバーの[戻る]ボタンを使用して前のビューに戻ると、文字列値を保持できません。この問題を解決するためにあなたの助けが必要です。

前もって感謝します

0 投票する
1 に答える
236 参照

iphone - どの注釈が選択されているかをプログラムに認識させ、そのプロパティにアクセスできるようにするにはどうすればよいですか?

これまでのところ、私のプログラムはカスタム注釈ビューのデータベースを表示できます。最終的には、注釈バブルのボタンがクリックされた後に、プログラムが追加情報を表示できるようにしたいと考えています。データベースの各要素には一意のエントリ番号があるため、このエントリ番号をカスタム アノテーションのプロパティとして追加することをお勧めします。私が抱えている問題は、ボタンをクリックしてプログラムが新しいビューに切り替わった後、選択した注釈のエントリ番号を取得できないことです。以下は、エントリ Number プロパティを注釈に割り当てるコードです。

注釈のボタンが選択されている場合、これは新しいビューを初期化するコードです。

最後に、新しいビューから entryNumber プロパティを取得して、鉱山データベースと比較し、配列要素に関する詳細情報を取得できるようにします。

では、この新しいビュー コントローラーでこのエントリ番号プロパティにアクセスするにはどうすればよいでしょうか?

0 投票する
2 に答える
400 参照

objective-c - iPhoneでrootviewcontrollerヘッダーファイルのロックを解除する方法

こんにちは、私のアプリケーションで私の rootviewcontroller.h ファイルを酸性にロックしたので、コードを書くと

そのファイルには「Not Writable RootViewController.h」と表示されています。私は初心者なので、.h ファイルのロックを解除する方法を教えてください。

前もって感謝します

0 投票する
2 に答える
103 参照

iphone - CocoaTouch(UIKit)で線形プロセスを表現する正しい方法は何ですか?

iPadアプリで線形プロセス(ウィザードを考えてください)を表す必要があります。

原則として、UINavigationControllerを使用して、プロセスの各ステップで新しいコントローラーをプッシュし続けることができます。しかし、私がモデル化しているプロセスには逆方向にナビゲートする概念がないため、これはかなり非効率的であるように思われます。そのため、以前のすべてのビューは無意味に残り、リソースを消費します。

現時点では、1つの「マスター」ビューコントローラーにサブビューを追加および削除し、基本的にコンテンツを交換しています。これは機能しますが、かなり不格好に感じます。これを実現するためのより良い方法があることを願っています。

さらに、ビュー間にアニメーション化されたトランジションが必要です。(現在、beginAnimations / commitAnimationsを介してこれを機能させています)

更新:私の質問を明確にするために:ウィザードには通常、戻るボタンがあることを知っています。それは私がここで構築しているものではありません。
表示する必要のあるプロセスには、多くのステップが含まれる可能性があります(場合によっては、最大で30〜40程度)。したがって、39個の廃止されたViewControllerにRAMを使用させたくありません。

0 投票する
2 に答える
145 参照

iphone - メモリ割り当ての問題をデバッグする方法は?

ユーザーがUITableViewの要素をクリックしたときに、2番目のビューを作成しようとしているiPhoneアプリを作成しています。コードは次のようになります

応答オブジェクトが適切に作成され、ビューが適切になります。上記のコードセグメントの最後の行は、最終的にReplyToViewControllerのviewDidLoadメソッドを呼び出すフレームワークコードを呼び出します。上記のコードの応答オブジェクトのアドレスとviewDidLoadのオブジェクトのアドレスが同じではありません。

この新しいオブジェクトがどこから来ているのか考えていますか?デバッグするにはどうすればよいですか?また、ReplyToViewControllerに次のメソッドを追加しました。これが呼び出され、この新しいオブジェクトを作成しているユーザーを見つけることができることを期待しています。しかし、それはこの方法で止まりません。

どんな助けでも大歓迎です。