問題タブ [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.

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

iphone - 別のモーダル ビュー コントローラー内からモーダル ビュー コントローラーをプッシュできますか?

ある時点で peoplePickerNavigationController を表示する rootViewController があります。ユーザーが特定の連絡先プロパティを選択したときに、次のように 2 番目のビュー コントローラーをプッシュしようとしています。

これは問題なくコンパイルされますが、シミュレーターでコードを実行して peoplePicker を実行すると、連絡先プロパティを選択しても何も起こりません。気まぐれで、 [self disconnectModalViewControllerAnimated:YES]; を追加しました。[ruleBuilder リリース] の直前。それは peoplePicker を却下しますが、それ以外の場合、欠落している ruleBuilder には影響しません。

何か案は?

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

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]; // 「動作しない」

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

iphone - サブビューからプッシュビューを呼び出す

これが事です。現在、いくつかのナビゲーション コントローラーを含む tabBar コントローラーがあります。ちょうどこのような :

http://tof.canardpc.com/view/d27d1361-c81b-43a0-9b5b-abb13d78e422.jpg

私の最初のナビゲーション コントローラーには、NewsViewsController というビュー コントローラーがあります。これがそのニブです(写真を参照)。

私の目標は、セグメント化されたコントロールの位置に応じて、サブビュー (テーブルビューを含む) を表示/非表示にすることです。このようにして、テーブルビューごとに 2 つの別個の viewController を持つことができます。これは実際に機能しています。そして、これが結果です(写真を参照)。

私の問題は次の問題です。セルをクリックしようとすると、プッシュビューが機能しません。実際、私の self.navigationController は null です。親ナビゲーション コントローラーを使用して詳細ビューをプッシュするにはどうすればよいですか?

アプリケーションのアーキテクチャが間違っていますか? ありがとうございます=)

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

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 には、システムの残りの部分をねじ込む特別な品質がありますか?

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

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) 送信者;
@終わり

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

iphone - iPhone-私をプッシュしたコントローラーを入手

コントローラーをプッシュしたときに、プッシュしたコントローラーを(送信せずに)取得する方法はありますか?または最初のもの?

ありがとう

0 投票する
3 に答える
695 参照

iphone - インデックス付きのiPhoneUITableViewは、セルごとに異なる詳細ビューをプッシュできますか?

側面にインデックスがあり、上部に検索バーがあり、ユーザーがアイテムを検索するために入力できるテーブルを作成できることは知っていますが、配列が「item1」に等しい場合はテーブルに言うことができます。 view1?セルごとに異なる見方をしたいと思います。誰かアドバイスはありますか?

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

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 を再プッシュできないと表示されます。何か案は?それが役立つ場合は、完全なコードを投稿できます。

お時間をいただきありがとうございます。

0 投票する
3 に答える
540 参照

iphone - グループ化されたテーブルを使用して新しいビューをプッシュするにはどうすればよいですか?

セルがタップされたときに新しいビューをプッシュしようとしましたが、まったく何も起こりません。グループ化されたスタイルは、プレーンと同じようにプッシュされると考えました。これが私のコードです:

}

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

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

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 についての根本的な誤解がありますか?