問題タブ [pushviewcontroller]
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.
iphone - 別のモーダル ビュー コントローラー内からモーダル ビュー コントローラーをプッシュできますか?
ある時点で peoplePickerNavigationController を表示する rootViewController があります。ユーザーが特定の連絡先プロパティを選択したときに、次のように 2 番目のビュー コントローラーをプッシュしようとしています。
これは問題なくコンパイルされますが、シミュレーターでコードを実行して peoplePicker を実行すると、連絡先プロパティを選択しても何も起こりません。気まぐれで、 [self disconnectModalViewControllerAnimated:YES]; を追加しました。[ruleBuilder リリース] の直前。それは peoplePicker を却下しますが、それ以外の場合、欠落している ruleBuilder には影響しません。
何か案は?
iphone - presentModalViewController と pushViewController の交換
サンプルプログラムでpresentModalViewControllerとして表示されるサンプルViewControllerを使用しています。ただし、代わりに UIViewController で pushViewController を使用したいと考えています。問題は、pushViewController に切り替えると、ViewController が正しく表示されないことです。ViewController の関数が呼び出されますが、何も表示されません。presentModalViewController に戻すと、すべてが機能します。
問題は、pushViewController を機能させるために何をする必要があるかということです。
A. [self presentModalViewController:fcVC animated:YES];
// 「動作する」
または
B. [self.navigationController pushViewController:fcVC animated:YES];
// 「動作しない」
iphone - サブビューからプッシュビューを呼び出す
これが事です。現在、いくつかのナビゲーション コントローラーを含む tabBar コントローラーがあります。ちょうどこのような :
http://tof.canardpc.com/view/d27d1361-c81b-43a0-9b5b-abb13d78e422.jpg
私の最初のナビゲーション コントローラーには、NewsViewsController というビュー コントローラーがあります。これがそのニブです(写真を参照)。
私の目標は、セグメント化されたコントロールの位置に応じて、サブビュー (テーブルビューを含む) を表示/非表示にすることです。このようにして、テーブルビューごとに 2 つの別個の viewController を持つことができます。これは実際に機能しています。そして、これが結果です(写真を参照)。
私の問題は次の問題です。セルをクリックしようとすると、プッシュビューが機能しません。実際、私の self.navigationController は null です。親ナビゲーション コントローラーを使用して詳細ビューをプッシュするにはどうすればよいですか?
アプリケーションのアーキテクチャが間違っていますか? ありがとうございます=)
iphone - moreNavigationController のナビゲーション バーのボタンをクリックすると動作します -- ビュー コントローラをプッシュできません
さて、ここに私の問題があります。私のアプリでは、iPhoneOS 画面の下部にあるタブ バーにカテゴリが表示されます。これにより、[MORE] ボタンが表示される前に 5 つのカテゴリしか許可されません。私は 25 を超えています (「申請内容を再考してください」などと答えないでください。これは前に無礼に言われました。これらは食べ物、飲み物などのカテゴリであり、変更できません)。ユーザーが自分のお気に入りをホームページに掲載できるようにしたいと考えています。Apple moreNavigationController 編集システムでは、編集ページのスペースの制約により、20 個のタブ バー項目のみを再配置できます。これでは不十分なので、独自の編集画面を実装する必要があります。rightBarButtonItem を nil に設定し、独自のものを作成しました。NSLogを使用すると、EDITボタンをクリックすると「クリック」が発生することがわかりますが、pushViewControllerを使用してプッシュすることはできません。何も起こりません。私が対処しているnavigationControllerと関係があると思います...しかし、よくわかりません。ps: これはすべて、UITabBarControllerDelegate と UINavigationControllerDelegate の両方として機能するアプリ デリゲートで発生します。
私は次のことをしようとしました:
これは、画面の右上に編集ボタンを配置するために機能します-Appleのルックアンドフィールを模倣しています...しかし、そのボタンをクリックすると、くそmoreNavigationControllerを終了できません。
私は多くのことを試しました。UIAlerts などは機能しますが、スタック上のビュー コントローラーをプッシュ (またはポップ -- ルート ビューにポップすることも) は機能しません。
moreNavigationController の表示ページで編集ボタンをクリックすると、予想どおりのログ エントリが取得され、(これは奇妙ですが) スタックのビューが上昇しますが、ページの変更は発生しません。正しいナビゲーション コントローラーを使用していないことを確認しましたが、使用するコントローラーを見つける方法がわかりません。
これも変なものです。編集機能でこれを行うと:
それは私を家に連れて行きます(tabbarcontroller 0へ)
しかし、これを行う:
動作しません。
moreNavigationController には、システムの残りの部分をねじ込む特別な品質がありますか?
iphone - 無効な引数の例外 - ナビゲーション バー、タブ バー、UIView
クラス 1 には、例外を生成する次のコードがあります -
-(IBAction) searchAllAction: (id) 送信者 {
AddDiagSearchController *search = [[AddDiagSearchController alloc] initWithNibName:@"DiagSearch" bundle:nil];
[self.navigationController pushViewController:検索アニメーション:YES];
}
パーツはpushViewController
次の例外を生成します -
2010-04-14 14:03:31.060 Nav[10314:207] *** -[UIView addTarget:action:forControlEvents:]: unrecognized selector sent to instance 0x3956a80
そして、プッシュしようとしているクラスには次のコードがあります。IBOutlets のすべての接続は、インターフェイス ビルダーを介して行われました。下部に tableView、検索テキスト バー、タブバーがあり、これを UINavigationController に追加します。
@interface AddDiagSearchController : UIViewController <UITableViewDataSource, UITableViewDelegate>{
UIBarButtonItem *quickAdd;
UIBarButtonItem *searchAll;
UITextField *searchTxt;
}@property (非アトミック、保持) IBOutlet UITextField *searchTxt;
-(IBAction) searchAllClicked:(id) 送信者;
-(IBAction) quickAddClicked:(id) 送信者;
-(IBAction) searchBtnClicked;
-(IBAction) rejectResponder: (id) 送信者;
@終わり
iphone - iPhone-私をプッシュしたコントローラーを入手
コントローラーをプッシュしたときに、プッシュしたコントローラーを(送信せずに)取得する方法はありますか?または最初のもの?
ありがとう
iphone - インデックス付きのiPhoneUITableViewは、セルごとに異なる詳細ビューをプッシュできますか?
側面にインデックスがあり、上部に検索バーがあり、ユーザーがアイテムを検索するために入力できるテーブルを作成できることは知っていますが、配列が「item1」に等しい場合はテーブルに言うことができます。 view1?セルごとに異なる見方をしたいと思います。誰かアドバイスはありますか?
uinavigationcontroller - ボタンのヘルプが要求された iphone メニュー ナビゲーション
いくつかの異なる(サブ)アプリを持つiPhoneアプリをプログラムしようとしています。理想的には、このアプリのメイン メニューの外観と動作を iPhone のアプリ メニューのようにする方法を知りたいのですが、わかりません。これを行うパッケージまたはライブラリを知っている人がいたら、教えてください。プラン B は、UIButtons を使用してモックすることです。ここで問題が発生します。
基本的に、新しいビューをプッシュするボタンを押すと、プッシュ メソッドが呼び出されますが、まだトップ ビューが表示されます。
アプリデリゲートには、次のようなものがあります。
AppViewController *viewController;
App1ViewController *app1ViewController;
UINavigationController *navController;
そして、didFinishLaunching メソッドでは、次のようになります。
viewController = [ [ AppViewController alloc ] initWithAppDelegate: self ];
app1ViewController = [ [App1ViewController alloc ] initWithAppDelegate: self ];
navController = [ [ UINavigationController alloc ] initWithRootViewController:viewController];
[ウィンドウ addSubview:viewController.view];
および2つの方法
-(void)app1{[ navController pushViewController: app1ViewController animation:YES ];}
-(void)back{[ navController popViewControllerAnimated:YES ];}
次に、AppViewController.hに2つのビューコントローラーがあります
@interface AppViewController : UIViewController {
UINavigationController *navController;
UIButton *appbtn1, *appbtn2, *appbtn3, *appbtn4;
}
-(id)initWithAppDelegate:(id)appDelegate;
@end
@interface App1ViewController : UIViewController {
UITextView *textView;
UINavigationController *navController;
}
-(id)initWithAppDelegate:(id)appDelegate;
@終わり
ビューコントローラーごとに loadView を定義します。ただし、app1 ボタンを押して app1 メソッドが呼び出されると、ビューがプッシュされたと表示されますが、ビューはボタン ビュー、つまりルート ビューのままです。ボタンをもう一度押すと、表示されていない app1view を再プッシュできないと表示されます。何か案は?それが役立つ場合は、完全なコードを投稿できます。
お時間をいただきありがとうございます。
iphone - グループ化されたテーブルを使用して新しいビューをプッシュするにはどうすればよいですか?
セルがタップされたときに新しいビューをプッシュしようとしましたが、まったく何も起こりません。グループ化されたスタイルは、プレーンと同じようにプッシュされると考えました。これが私のコードです:
}
どんな助けでも大歓迎です。
crash - UIViewController のプッシュとポップによる UINavigationController のクラッシュ
問題: UIWindow のサブビューとしての UINavigationController、rootViewController クラス、およびカスタム MyViewController クラスがあります。次の手順では、100% 再現可能な Exc_Bad_Access が取得されます。
左後ろの tapBarItem を 2 回押して (myViewController インスタンスを 2 つポップアウト)、rootViewController を表示します。
試行錯誤の苦痛な半日の後、私は最終的に答えを見つけますが、質問もします。
解決策: .h ファイルが煩雑になるのを避けるために、プライベート変数を宣言する怠惰な方法として、.m ファイルで多くのオブジェクトを宣言しました。例えば、
何らかの理由で、myViewController_2ndInstance のビューをロードした後、myViewController_1stInstance のビューがアンロードされる (ただしナビゲーション コントローラのスタック内にある) 場合、iPhone OS はこれらの「遅延プライベート」変数のメモリ割り当てを追跡できなくなる場合があります。myViewController_2ndInstance'view がまだロードされているため、最初に背面の tapBarItem をタップしても問題ありません。しかし、最初のインスタンスの割り当てを解除しようとしたため、背面の tapBarItem を 2 回タップすると地獄に落ちました。[可変解放] を呼び出したところ、ランダムにポイントされた (ルース ポインター) ため、Exc_Bad_Access になりました。
この問題を解決するには、変数 1 を .h ファイルで @private として宣言するだけです。
ここに私の質問があります: UINavigationController に関与するまで、私はかなり長い間「怠惰なプライベート」変数を問題なく使用してきました。これはiPhone OSのバグですか?それとも、Objective C についての根本的な誤解がありますか?