問題タブ [uitabbarcontroller]
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.
ios - タブバーの[その他]メニューのカスタマイズ
アプリでタブバー(UITabBarController)を使用していますが、[その他]ボタンをクリックしたときに表示されるテーブルの外観をカスタマイズしたいと思います。より多くの画面に表示されるナビゲーションバーの外観を設定することで変更する方法を考え出しました
UITabBarControllerのサブクラスで、変更することでテーブルの背景色を変更することができました
、しかし、テーブルに表示されるセルのフォントの色を変更する方法がわかりません。使えるといいなと思っていました
しかし、これは常に空のようです。viewDidLoad、viewWillAppear、viewDidAppearでこれを試しましたが、成功しませんでした。オブジェクトself.moreNavigationController.topViewControllerのタイプはUIMoreListControllerですが、これは文書化されていないようで、インターフェイスに役立つものが何も表示されません。
何か案は?
iphone - UITabBarController と回転
UITabBarController で実際に問題が発生しています。私が求めている結果は次のとおりです: 1) ポートレート モードでは、単純なタブ バー ベースのアプリケーション (ナビゲーション バーを含む) はあまり派手ではありません。2) ランドスケープ モードでは、UITabBar を完全に無視して独自の UIViewController を使用したいと考えています。
私が最後に試したアプローチ(私は多くの変種を試しました)は、なぜ「機能していない」のか理解できませんでした:
縦向きに戻るときは逆にします。
私が抱えている問題の量 (まあ、単純に間違って回転し、実際に混乱したインターフェイスを作成するだけです) は、まったく説明のつかないものです。tabbarcontroller ビューは、標準のビュー階層にあることをまったく「好き」ではなく、画面に直接接続したいようです。私の目標を達成するための最良のアプローチは何なのか、なぜタブバーがビューのサブビューになりたくないのか、
どんなヒントでも大歓迎です。
-t
iphone - iPhone: TabView + TableView
簡単なものが欠けていると思いますが、それが何であるか正確にはわかりません。
を使用してアプリをセットアップしようとしUITabViewController
ていますが、タブの 1 つに UITableView と UISearchBar があります (ただし、Navigation Controller はありません)。Interface Builder ですべてのタブを設定しUITabViewController
、ビューは独自の xib ファイルにあります。のついたタブのxibファイルをUITableView
以下のように設定して接続します。
ブラウザ内のもの: ファイルの所有者 (クラスは UITableViewController の子である私のカスタム クラスです) ビュー -> ビュー
このセットアップはすべての項目を表示し、ロックアップしませんが、UITableView を使用してタブを読み込もうとするとクラッシュせずに DataSource を割り当てることができません。IB またはコードで、このテーブルにデータを取得するにはどうすればよいですか? 私の考えは次のとおりです。
- カスタム UITableView クラスを実装し、IB でテーブル ビューに接続するか、Xcode でカスタム テーブルビュー コントローラーに接続します。
- 機能するまで、頭またはラップトップを壁にぶつけます。
更新:これは、Tableview のデータ ソースに接続し、File Owner (カスタム tableviewcontroller のクラス) にデリゲートするときに、シミュレーターがコンソールにプッシュするエラーです。
2/14/09 6:59:12 PM TabBarWillbeRight[33172] * キャッチされない例外 'NSInvalidArgumentException' によるアプリの終了、理由: '* -[UIViewController tableView:numberOfRowsInSection:]: 認識されないセレクターがインスタンス 0x523760 に送信されました
ios - UITabBarの色合い/背景色の変更
UINavigationBarとUISearchBarの両方にtintColorプロパティがあり、これらのアイテムの両方の色合いの色を変更できます(驚くべきことに、私は知っています)。アプリケーションのUITabBarにも同じことをしたいのですが、デフォルトの黒色から変更する方法を見つけました。何か案は?
iphone - ナビゲーション コントローラー内のタブ バー コントローラー、またはナビゲーション ルート ビューの共有
Tweetieアプリのような構造の UI を実装しようとしています。これは次のように動作します。最上位のビュー コントローラーは、ルート ビューが "アカウント" テーブル ビューであるナビゲーション コントローラーのようです。いずれかのアカウントをクリックすると、下部にタブ バーがある第 2 レベルに移動します。各タブ項目には異なるリストが表示され、さらにドリルダウンできます (後続のレベルにはタブ バーは表示されません)。
したがって、実装階層は次のようになります。
UINavigationController
- アカウント:
UITableViewController
UITabBarController
- ツイート:
UITableViewController
- ツイート/ユーザー/その他の詳細ビュー
- 返信:
UITableViewController
- ...
- ツイート:
- アカウント:
これは機能しているように見えます[^1]が、SDKドキュメントによるとサポートされていないようです-pushViewController:animated:
(強調を追加):
viewController : スタックにプッシュされるビュー コントローラー。タブ バー コントローラーのインスタンスにすることはできません。
非公開 API などは避けたいのですが、問題なく動作しているように見えるのに、なぜこのような使用が明示的に禁止されているのかわかりません。理由を知っている人はいますか?
タブ バー コントローラーをメイン コントローラーとして配置し、各タブに個別のナビゲーション コントローラーを配置することを考えました。これに関する問題は、各ナビゲーション コントローラーが単一のルート ビュー コントローラー (つまりTweetieの「アカウント」テーブル) を共有する必要があることです。最初から。言うまでもなく、別のアカウントを選択するときのすべての簿記はおそらく苦痛でしょう.
これを正しい方法で実装するにはどうすればよいですか?
[^1]: タブ バー コントローラーは、そのレベルのタブ バー コントローラーのナビゲーション項目が選択されたタブのナビゲーション項目と同期し続けるようにサブクラス化する必要があり、個々のタブのテーブル コントローラーは、それぞれの詳細ビューをself.tabBarController.navigationController
代わりにプッシュする必要があります。 self.navigationController
.
iphone - UITabBarControllerから_tabBarインスタンスにアクセスするにはどうすればよいですか
UITabBarControllerから_tabBarインスタンスにアクセスしようとしています。特定の状況でtabBarを非表示にしようとしています。このために、UITabBarControllerに拡張機能を追加しました。ここで、_tabBarインスタンスにアクセスし、setHiddenメッセージを呼び出すことができます。これはシミュレータ用にコンパイルするときに機能しますが、デバイス用にコンパイルすると、次のエラーが発生します
"_OBJC_IVAR _ $ _ UITabBarController._tabBar"、UITabBarController+TabBar.oの_OBJC_IVAR_$ _ UITabBarController._tabBar$non_lazy_ptrから参照
コンパイラフラグに何を追加する必要がありますか?シミュレーター用にコンパイルするときになぜそれが機能するのですか?
前もって感謝します。
iphone - UITabBarController を使用する UITableViewController が表示されない
私は興味深い状況に遭遇しました.3つUITableViewController
のiPhoneアプリがそれぞれ多かれ少なかれ同じデータを表示しています(フィルタリングの問題だと言えます)。これまでに、このために 3 つの個別の NIB があり、それぞれに独自のコントローラーがあり、さらに上部のボタンのためにUITableViewController
s が内部にありました。UINavigationController
ここで、アプリを最適化してフットプリントを削減するために、すべてのロジックを 1 つの共通コントローラー ( UITableViewController
) にパックし、NIB を 1 つだけ残しました。共通コントローラーは、データをフィルター処理して正しいデータを指すようにします。
したがって、同じ共通コントローラーを 3 つのナビゲーション コントローラーにロードします。
これらのナビゲーション コントローラを に追加しましたUITabBarController
:
タブが表示され、テーブル ビューが表示されます。しかし、次のものをタッチして、表示UITabBarItem
されていない前のものに戻ると、その場所にUITableViewController
のみ表示UIWindow
されます。はUITableViewController
最後に触れたときだけ表示されますUITabBarItem
。
UITabBar
私が気付いていないある種のビュー読み込みメカニズムはありますか?
ios - UIView をプッシュするときに UITabBar を非表示にする
UITabBarController
デフォルトのView ControllerがUINavigationController
. で特定のビューをプッシュしたときに、 UITabBarController の UITabBar を非表示にできるようにしたいと考えていUINavigationController
ます。
私は追加しようとしました:
ビューをプッシュする前に、UINavigationController
それはうまくいかないようです。
私が何をすべきか、またはそれが可能かどうかについてのヒントはありますか? 前もって感謝します!