問題タブ [navigationcontroller]

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 に答える
290 参照

iphone - 2 つのナビゲーション ビュー間の UITextView のコンテンツ処理

テーブルセルと保存ボタンがあるビューがあります。

表のセルに触れると、新しいナビゲーション ビューがスライドインします (ビュー b )。ビュー b には、保存する必要があるすべてのコンテキストを入力する 1 つの UITextView があります。もちろん、「view b」の左上には「戻る」ボタンがあります。

「ビュー a」には保存ボタンがあり、入力した「ビュー b」から textView のコンテンツを保存する必要があります。実際には保存する必要がある他の情報があるため、保存は「ビュー b」ではなく「ビュー a」で行われます。 「ビュー a」も同様です。

これを行うには、「view b」の textView に何かを入力し終えて「view a」(戻るボタンまたは完了ボタン) に戻ったときに、気化するのではなく、テキスト ビューのコンテンツを何とかして元に戻す必要があります。保存ボタンを押すと保存されるように「view a」。

どうすればいいですか?(私はこれを理解するためにほぼ一日を費やしました..)

これまでのところ私は考えています.. ?? = self.textView.text; 'view b' の viewWillDisappear で

どうもありがとう。

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

objective-c - iPhone SDK の UIView の更新についてサポートが必要

シンプルなドリルダウン ナビゲーション アプリがあります。詳細ビューでは、ナビゲーション項目で選択された行に応じて、サイズが 20x20 の UIImage をいくつか描画しています。これらの画像は、行が選択されたときに詳細ビューの上にサブビューとして描画されます。「詳細ビュー」に到達したら、いくつかのボタンを設定しました。ボタンを押すと、小さな画像が再配置されます。このためには、以前の画像をクリアして、ビュー内の別の場所で再描画する必要があります。[MyView changeImagePositionwithPosnumber:"number selected by buttons"] のようなメソッドがあります。既存の画像の上に描画されるため、ボタンが押されたときにこのメソッドを渡すことはできません。このメソッドを渡すためにビューを更新するにはどうすればよいですか? これには draw rect を実装する必要がありますか? drawrect がよくわからず、実装方法がわかりません。つまり、詳細ビューから離れたときにナビゲーションコントローラーが行うことは何でもしたいので、ビューを更新して新しい画像を描くことができます。これに関するヘルプは大歓迎です。私はまだ初心者です。

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

flip - フリップを追加したので、戻るボタンはルートビューまで表示されます

ルートビューといくつかの子ビューがあります。ビューごとに、ビューをめくって情報画面を表示する情報ボタンがあります。私の問題は、戻るボタンを使用して戻ると、元の画面に戻らないことです。つまり、ルートビューに戻ります。通常のプッシュの代わりにフリップを追加するすべての作業を完了する前は、問題ありませんでした。

階層の3ページにあるviewController(これをdetailViewControllerと呼びます)では、次のようになります。

そのinfoViewControllerで:

「detailViewController」に戻るわけではありません。最初のオープニング画面ビューに戻ります。

ちなみに、情報画面のナビゲーションバーでは、戻るボタンをタップしても表示された場所に移動しませんが、戻るボタンにはルートビューのタイトルではなくdetailViewControllerのタイトルが適切にラベル付けされています。助けてください...ありがとう!

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

iphone - UINavigationContlrol がビューをポップアップ表示しない

それについていくつか質問があることは知っていますが、どれも答えられていません。

アプリにナビゲーション コントローラーがあります。ビューのプッシュは正常に機能します。押した後、戻るボタンも表示できますが、戻るボタンを押すと、ビューがポップされず、ナビゲーション バーのビューがプレビューのビュー ナビゲーション バーに変更されるだけです。

誰かが今答えを持っていることを願っています。

前もって感謝します。

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

iphone - IPhone ナビゲーション コントローラー - ビューを再利用するためのベスト プラクティス

こんにちは、私は自分のアプリでナビゲーション コントローラーをよく使用していますが、スタック上の既存のビューを再利用するのではなく、同じビューを何度も呼び出してナビ コントローラー スタックにプッシュするビューにアプリが悩まされ始めています。

たとえば、アプリのさまざまな場所で呼び出されるマップ ビューがあります。

Nav Controller スタックを実際に調べて、既にプッシュしたマップビューを見つけて、スタックの一番上に移動する必要があります。

代わりに、新しいものを作成して、それを一番上に押し込みます。

私のアプリがより複雑になると、メモリの問題が発生し、ユーザーは戻るボタンを押してメインメニューに戻るのに飽きてしまうでしょう。

Nav Controller スタックでビューを見つける良い例は誰にでもあります。

どうすればいいですか?

App Delegate でマップ ビューへのポインタを保持する必要がありますか?

スタック内でビューをすばやく見つける方法がある場合、またはインデックス/NSDictionary をどこかの場所に保持する必要があります。

Facebook アプリを書いている人は誰でも同じ問題を抱えていることに気付きました。通知が届くと、アプリを開き、通知ビューをインスタンス化してスタックにプッシュします。しばらくすると、古い通知ウィンドウの山全体を閉じて、メイン メニューに戻ります。乾杯

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

objective-c - UIToolbar のメモリ リーク

現在、ナビゲーション ベースのアプリケーションがあり、明らかに RootViewController は UITableView です。ただし、UITableView の上に浮かぶ UIToolbar を作成する必要があると判断しました。現在、私はこれをこのようにしています。

しかし、Leaks インストゥルメント ツールを使用した後、これがいくつかのメモリ リークの原因であると判断できました。それにもかかわらず、メモリ リークはごくわずかでした。次に、さらに掘り下げて、メモリ リークの原因となっている正確な行を特定することができました。それらは次のとおりです。

これらのメモリ リークを取り除く方法を見つけ出すのに苦労しているため、アプリケーションがよりスムーズに実行されます。上記の行がリークを引き起こしている理由について、何か助けていただければ幸いです。

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

iphone - navigationController.navigationBar.barStyle のカスタマイズの問題

私はフォーラム全体を読んでいるかもしれませんが、何か間違ったことをしているかもしれません。

tabController = [[UITabBarController alloc] init]; tabController.delegate = 自己; [tabController setViewControllers: [NSArray arrayWithObjects: //[[[UINavigationController alloc] initWithRootViewController:[[[SearchTableViewController alloc] init] autorelease]] autorelease], //[[[UINavigationController alloc] initWithRootViewController:[[[SearchPhotosViewController alloc] init] autorelease]] autorelease], //[[[UINavigationController alloc] initWithRootViewController:[[[SearchPhotosViewController alloc] init] autorelease]] autorelease], //[[[UINavigationController alloc] initWithRootViewController:[[[SearchPhotosViewController2 alloc] init] autorelease] ] autorelease], [[[UINavigationController alloc] initWithRootViewController:[[[crap2 alloc] init] autorelease]] autorelease], [[[UINavigationController alloc] initWithRootViewController:[[[crap3 alloc] init] autorelease]] autorelease], [[[UINavigationController alloc] initWithRootViewController:[[[crap alloc] init] autorelease]] autorelease], nil]]; //tabController.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent;

//tabController.navigationController.navigationBar.barStyle = UIBarStyleBlack; //tabController.navigationController.navigationBar.barStyle = UIBarStyleBlackOpaque; //tabController.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent; tabController.navigationController.navigationBar.barStyle = UIBarStyleBlack; [window addSubview:[tabController ビュー]];

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

core-data - 'NSInternalInconsistencyException'、理由: '+entityForName: エンティティ名の NSManagedObjectModel が見つかりませんでした

タブバーとナビゲーションバーが統合されたウィンドウベースのアプリケーションがあります。ナビゲーション バーには、テーブル ビューを開くカスタム ボタンがあります。

テーブルのセルをクリックすると、新しいテーブル ビュー コントローラーが開きます。しかし、最初のテーブルのセルをクリックするとすぐに例外が発生します

正しい位置にあることを確認しAddFormました。

上記および他のスレッドで提供されたすべての解決策を試しましたが、まだ行き詰まっています。誰かが私を助けてくれることを願っています。

流れはこんな感じ

ListButton (クリックするとリスト ビューが開きます) -> テーブル ビューが開きます -> (セルをクリックすると、新しいテーブル ビュー コントローラーが開き、コア データからデータをフェッチする必要があります)

私のルートView Controllerコードは2番目のTable View Controllerファイルにあります...それは私が間違っていることですか? その前にコアデータが必要ないのでそうしています....

助けてください

前もって感謝します

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

iphone - タブ バー アプリケーションで以前のナビゲーション コントローラーをリセットする

内部にナビゲーションコントローラーとビューコントローラーを備えたタブバーアプリケーションがあります。並べるとこんな感じ。

私がやりたいことは、Tab Bar 1 の Other ビュー コントローラーに移動してから、Tab Bar 2 に切り替えるときに、Tab Bar 1 をルート ビュー コントローラーに戻すことです。

私が探している動作は、iPod アプリに似ています。どんな助けでも大歓迎です。ありがとう!

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

iphone - NavigationController/TableViewのiPhoneでのメモリリーク

最近、私は最初のIphoneアプリを完成させ、それはすりおろして動作します....しばらくして漏れがなく、楽器を使って漏れを見つけるために激しいセッションを行ったときを除いて、突然約1.3Kbの価値があります。スタックトレースでは、UIViewControlerをナビゲーションコントローラーにプッシュした後にリリースした正確な行をすべて指し示しています(このコードをもう少し下に投稿します)。リークは、ViewControlersをナビゲートして再び戻った後、発生するようです。これは非常に一般的な質問ですが、誰かが私を正しい方向に向けてくれることを願っています。私はこれを解決するために数日を費やしました、そしてそれは私を夢中にさせ始めています!

私のアプリはナビゲーションベースのアプリです。簡単に言うと、次のように機能します。

UIViewControlerで始まり、ボタンが押されると、TableViewを含む別のUIViewControlerに移動します。ここから、TableViewに入力する配列の内容に応じて、PickerViewを含むUIViewControlerに移動し、次に最後のUIViewControlerに移動するか、PickerViewを含むUIViewControlerをバイパスして最後のUIViewControlerに直接移動します。

スタックトレースがリークが発生していることを示すコードは次のとおりです。

NavigationControllerがこのUIViewcontrolerを担当するべきではありませんか?私は他のどこにもretainを呼び出しておらず、この関数にのみ存在します。

UIkitとQuartsZoneからたくさんのリークがあります。いくつかのスクリーンショットを以下に示します。スタックトレースでは、トレースのある時点で上記と同じオブジェクト内の同じコードの同じスニペットをすべて指し示しています。

まだ画像を投稿できないため、画像へのリンクは次のとおりです。リンクは無効になりました

これは、リストの最初のGeneralBlock-16からの完全なスタックトレースです。太字(29行目)は上記のコードスニペットです。


0 libSystem.B.dylib malloc

1 CoreFoundation-[__ NSArrayM insertObject:atIndex:]

2 CoreFoundation-[__ NSArrayM addObject:]

3 UIKit-[UIView(UIViewGestures)addGestureRecognizer:]

4 UIKit-[UISwitch _commonInit]

5 UIKit-[UISwitch initWithCoder:]

6 UIKit UINibDecoderDecodeObjectForValue

7 UIKit UINibDecoderDecodeObjectForValue

8 UIKit-[UINibDecoder decodeObjectForKey:]

9 UIKit-[UIView initWithCoder:]

10 UIKit UINibDecoderDecodeObjectForValue

11 UIKit-[UINibDecoder decodeObjectForKey:]

12 UIKit-[UIRuntimeConnection initWithCoder:]

13 UIKit UINibDecoderDecodeObjectForValue

14 UIKit UINibDecoderDecodeObjectForValue

15 UIKit-[UINibDecoder decodeObjectForKey:]

16 UIKit-[UINib instanceiateWithOwner:options:]

17 UIKit-[NSBundle(UINSBundleAdditions)loadNibNamed:owner:options:]

18 UIKit-[UIViewController _loadViewFromNibNamed:bundle:]

19 UIKit-[UIViewController loadView]

20UIKit-[UIViewControllerビュー]

21 UIKit-[UIViewController contentScrollView]

22 UIKit-[UINavigationController _computeAndApplyScrollContentInsetDeltaForViewController:]

23 UIKit-[UINavigationController _layoutViewController:]

24 UIKit-[UINavigationController _startTransition:fromViewController:toViewController:]

25 UIKit-[UINavigationController _startDeferredTransitionIfNeeded]

26 UIKit-[UINavigationController pushViewController:transition:forceImmediate:]

27 UIKit 0x6ea9b5

28 UIKit-[UINavigationController pushViewController:animated:]

29ブービートラップ-[SelectEventTypeviewcontrolerChooseThisOne]/Users/chriswyllie/Documents/Booby Trap / Booby Trap / Classes / SelectEventTypeviewcontroler.m:91

30 CoreFoundation-[NSObject(NSObject)performSelector:withObject:withObject:]

31 UIKit-[UIApplication sendAction:to:from:forEvent:]

32 UIKit-[UIApplication sendAction:toTarget:fromSender:forEvent:]

33 UIKit-[UIControl sendAction:to:forEvent:]

34 UIKit-[UIControl(Internal)_sendActionsForEvents:withEvent:]

35 UIKit-[UIControl touchesEnded:withEvent:]

36 UIKit-[UIWindow _sendTouchesForEvent:]

37 UIKit-[UIWindow sendEvent:]

38 UIKit-[UIApplication sendEvent:]

39 UIKit _UIApplicationHandleEvent

40 GraphicsServices PurpleEventCallback

41 CoreFoundation CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION

42 CoreFoundation __CFRunLoopDoSource1

43 CoreFoundation __CFRunLoopRun

44 CoreFoundation CFRunLoopRunSpecific

45 CoreFoundation CFRunLoopRunInMode

46 GraphicsServices GSEventRunModal

47 GraphicsServices GSEventRun

48 UIKit-[UIApplication _run]

49 UIKit UIApplicationMain

50ブービートラップメイン/Users/chriswyllie/Documents/ブービートラップ/ブービートラップ/main.m:14

51ブービートラップ開始


よろしくお願いします。ばかげたことをしているだけで、それを見るには新鮮な目が必要です。さらに情報が必要な場合はお知らせください。