問題タブ [uinavigationcontroller]

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 投票する
3 に答える
926 参照

iphone - UINavigationController によって管理される View Controller を切り替えることは可能ですか?

私は UINavigationController の通常のパラダイムを壊しているか、少なくともそうしようとしています。

Navigation Controller がスタックを介してナビゲーションを管理することはわかっています。ルート コントローラー A で初期化し、B に移動してから C に移動すると、スタックは C/B/A のようになります。

私がやりたいのは、ビュー C に別のビュー (X など) を表示するボタンがありますが、ナビゲーション コントローラーのナビゲーション バーはそのままにしておくことです。基本的に、スタックの「C」と「X」を切り替えます。以下に示すように、CをオフにしてすぐにXを押すことでそれを達成しようとしましたが、うまくいきませんでした。ここで間違った道を進んでいますか?

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

iphone - iPhone SDK - navController pushViewController - 応答しない

START (基本的にはログイン ボタン) と SETTINGS の 2 つのボタンを持つ navigationController を持つビューがあります。[設定] をクリックすると、設定ビューが表示され、計画どおりに閉じます。設定をクリックしてから、クラッシュすることなく何度もクリックすることができます。良い。

ここで、ユーザーが [開始] をクリックすると、navController で SHOWLOGOFFBUTTONS メソッドを呼び出して、ビューの上部に表示されるボタンを変更します。navBar には LOGOFF ボタンしかありません。そのボタンがクリックされると、SHOWLOGINBUTTONS を呼び出して、ユーザーが以前と同じログイン ボタンを持つようにし、SETTINGS と START (ログイン) に再度アクセスできるようにします。

問題は、LOGIN ボタンから LOGOFF ボタン、LOGIN BUTTONS への「ボタン切り替え」を行うと、SETTINGS ボタンが機能しなくなることです。SHOWSETTINGS メソッドがトリガーされて実行されますが、エラーは発生しませんが、ビューは表示されません。

どんな援助でも大歓迎です!!

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

iphone - ナビゲーション コントローラーが 2 回目にクラッシュする

アプリケーションで 1 つのナビゲーション コントローラーを使用しています。1 つのメイン ビュー (メイン ビュー コントローラーを使用) といくつかのオプション ビューがあります。オプション ビューは、メイン ビューのツールバーのボタンをクリックすると、ナビゲーション コントローラーによって表示されます。

すべてが初めて期待どおりに機能します。ナビゲーション コントローラーからメイン ビューに戻り、オプション ビュー (つまり、ナビゲーション コントローラー) に移動しようとすると、アプリケーションがクラッシュします。

以下は私のコードです、

ナビゲーションコントローラーを処理する正しいメカニズムは何ですか? ナビゲーション コントローラーまたはオプション ビューを解放/割り当て解除する必要がありますか?

サンプル コードが役立ちます。

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

iphone - UIViewControllerからサブビューとしてUINavigationControllerをロードします

私はiPhone開発の初心者です。最初にUIViewControllerを持ち、ボタンが付いたアプリを作成したいと思います。ボタンをクリックすると、UINavigationコントローラーが読み込まれます。これが私がどのように近づいているかです:

  1. UIViewControllerクラスを作成しました。

    ボタンを押すため。

  2. 次に、UIViewxibファイルを作成しました。IBで必要な手順を実行しました。

  3. 次に、AppDelegateで、ViewControllerのインスタンスをウィンドウのサブビューとして追加しました。

これまではOKです。

次に、ボタンを押すだけでナビゲーションコントローラーをロードするにはどうすればよいですか?

ウィンドウベースのアプリからnavigationControllerプロジェクトを構築する方法は知っていますが、UIViewのサブビューとしてNavigationControllerを実行するのに苦労しています。

あなたの助けは大歓迎です。

0 投票する
5 に答える
7593 参照

iphone - popViewController が 1 回おきにしか機能しないのはなぜですか

私は完全に困惑しています、これが状況です:

私のアプリは Core Location フレームワークを使用してユーザーの現在の場所を取得し、TrailBehindでサーバーに ping を送信して近くの興味深い場所を探し、それらをリストとして表示します。問題はありません。

バッテリーを節約するために、サーバーからデータを取得した後、GPS サービスをオフにします。ユーザーがアプリの使用中に移動し、新しいリストが必要な場合、ナビゲーション コントローラーの [更新] をクリックすると、CLLocation サービスが再びアクティブになり、サーバーから新しいデータのバッチが取得され、テーブルが再描画されます。

アプリがサーバーからデータを取得している間、「読み込み中です。お待​​ちください」という地球儀が回転する読み込み画面を読み込み、「戻る」ボタンを押さないようにナビゲーション バーを非表示にします。

そのため、サーバーからの最初のデータ取得は問題なく行われます。

最初に更新を押したときに、すべてのコードが実行されて新しい場所が取得され、サーバーに再度 ping が実行されて新しいデータ リストが取得され、セルが更新されます。ただし、テーブル ビューをロードする代わりに、テーブル ビューのナビゲーション コントローラー バーを復元しますが、メイン ウィンドウにロード ビューを表示します。これはデバイスでのみ当てはまり、シミュレーターではすべてが正常に機能します。

リフレッシュ機能を2回目に押すと、機能が正常に機能します。

上記のように更新を3回目にすると失敗します。

リフレッシュを4回目にすると、正常に動作します。

上記のように更新を5回目にすると失敗します。

などなど、偶数のリフレッシュは成功し、奇数のリフレッシュは失敗します。すべてのコードを 1 行ずつ調べてみたところ、すべてが正常に実行されているようです。私は実際にコア命令をステップオーバーし続け、「ステップオーバー」を大量にクリックした後、CFRunLoopRunSpecificのある時点でテーブルビューが実際に画面に表示されることがわかりましたが、「続行」をクリックするとロードビューが引き継がれましたスクリーン。

私は絶対に困惑しています。助けてください!!あなたの洞察を前もって感謝します。

奇妙な動作のビデオ:

関連コード:

RootViewControllerMethods (これは、この TableView プロジェクトのベース ビューです)

CLController メソッド: 基本的に、すべてのデータを直接 RootViewController に送り返すだけです。

0 投票する
14 に答える
211098 参照

ios - iPhoneは最初のページでのみナビゲーションバーを非表示にします

ナビゲーションバーを非表示および表示する以下のコードがあります。最初のビューが読み込まれると非表示になり、「子」が呼び出されると非表示になります。問題は、ルートビューに戻ったときに、イベント/アクションをトリガーして再び非表示にするイベント/アクションが見つからないことです。

ルートページに手動でアクションを実行する「テスト」ボタンがありますが、きれいではないので自動にしたいです。

0 投票する
5 に答える
6747 参照

iphone - UITableView にまだデータがない場合、プレースホルダー画像を表示するにはどうすればよいですか?

ロード時に、ユーザーのデータを含む UITableView を表示するアプリケーションがあります。

ただし、ユーザーが最初にアプリケーションをロードしたとき (データを作成する前)、空のテーブルの代わりに背景画像を表示したいと思います (「レコードの追加」ナビゲーションバーボタンを指す矢印付き)。 . ユーザーが最初のレコードを追加すると、代わりにテーブルビューが表示されます。私は多くのアプリがこれを行うのを見てきました - 現時点で私が考えることができる唯一の例は、予算などを設定する前の Cha-Ching です。しかし、私は一生、これを行う方法を考え出すことはできません。

最初にメイン ウィンドウの xib にナビゲーション コントローラーを追加しました。その rootViewController はカスタム ビューコントローラー/xib でした。この rootViewController には、その上に非表示の tableview がある背景画像と、tableview を管理するカスタム tableviewcontroller が含まれていました。これは問題なく機能しているようで、データがあればロードしてテーブルに表示します。ただし、データを画面外にスクロールすると、アプリがクラッシュし、次のエラーが発生します。

UITextEffectsWindow が何であるか、またはテーブルビューを管理しようとした理由がわかりません。ビュー階層で何かが正しく接続されていない可能性があると思います...

これを行うためのはるかに単純で簡単な方法があれば、誰かがそれを説明できれば非常に感謝しています. これをどのように行いますか?

前もって感謝します。

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

iphone - pushViewController のデバッグ

(階層の 3 番目の子から) 次のようにルート ビューをロードしようとしています。これは機能せず、以下のコードを実行すると次のエラーが発生します。

コード:

これとまったく同じコードが他のビューでも機能します。これをデバッグする方法を考えてください。

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

iphone - 新しいテーブルアイテムのモーダルテキスト入力を支援する

まず、私はiPhoneにかなり慣れていないということから始めましょう。それで、無知であることをお詫びします。

新しいアイテムを追加したいUITableViewがあります。追加ボタンが押されたときに、ユーザーが新しいアイテムのテキストを入力する場所にモーダル画面を上にスライドさせたいです。

私はAppleのiPhone用テーブルビュープログラミングガイドを読んでいますが、彼らはおそらく私が望むことをする例を持っています:

}

ただし、itemInputControllerが何であるかはどこにも説明されていません。私が判断できる限り、単一のテキストフィールドを含むモーダルビューと、[キャンセル]と[保存]を含むナビゲーションバーが表示されるはずです。このビューをInterfaceBuilderで自分で作成することになっていますか?それとも、どういうわけかインポートする必要がある標準的なものですか?誰かが私がこれを解読するのを手伝ってくれるか、あるいはこれを機能させる別の方法を教えてもらえますか?

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

iphone - UINavigationController NIB では、ファイルの所有者にビューが必要ですか?

Interface Builder で View Controller nib のデフォルトの View Outlet を設定する際に問題があります。これが私のセットアップです:

ナビゲーション コントローラーをモーダル ビューとして読み込む TabBar ベースのアプリケーションがあります。

MenuController 自体は次のように構成されています。

MyNavCtrlrSubClass が読み込まれるときに次のエラーが発生することを除いて、これはすべて正常に機能します。

Loaded the "MenuController" nib but the view outlet was not set

これが起こっている理由は明らかです。ファイルの所有者には、そのビューのアウトレット接続がありません。問題は、そのビューとして何を設定する必要があるかということです。そもそも何かを設定する必要がありますか? Navigation Bar は MenuController.xib の唯一の候補ですが、これを行うと、いわば UINavigationBar 自体のサイズがフルスクリーン モードになります。

私は明らかにIBで何かが欠けていますが、何ですか?MyNavCtrlrSubClass.m には、UINavigationController の IBOutlet を除いて、コード自体はありません。IB でこれを完全に設定しようとして間違いを犯していますか? アイデアは、モーダル ナビゲーション コントローラーを 1 つのペン先に保持し、それがロードするすべてのビューを別々のペン先に保持することですが、MenuController はナビゲーションの単なるコンテナーであり、ビュー自体は含まれていないため、明らかに設計が間違っています。:)

なぜ私が別の方法で設計しないのか疑問に思っているのであれば、それは、理想的な階層を構築するよう IB がどのように求めているかについて、私の (おそらく間違った) 認識に従おうとしているからです。

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