問題タブ [uiwindow]
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 - UIWindow が子であり、UView の親でもあるのはなぜですか?
UIKit リファレンスは、UIView は UIWindow のスーパークラスであると述べていますが、この親子関係にもかかわらず、UIWindow は実際には UIView を管理します。これは私にはとても珍しいように聞こえます。
ソフトウェア設計の観点から、これの重要性を知っている人はいますか?
どうもありがとう。
編集:
iPhone プログラミング ガイドの関連する段落を読みました。UIWindow を UIView の親にします。Apple がクラス階層をこのように設計することを余儀なくされた何かがあったに違いありません。
objective-c - 論理エラーですか、それともプログラムがパーツをスキップしていますか?
参考までに、私はobjective-Cでプログラミングしていますが、誰でも助けてくれるかもしれません。私は過去 2 時間ここに座って何が問題なのかを突き止めようとしており、この単純で小さなコーディングの問題をデバッグするために知っていることはすべて実行しました。以下のコードをチェックしてください。説明します。アプリケーションでは、MainScreenViewController から始まります。私のアプリケーションは、ユーザーに 2 つの選択肢を与えます...「マスター」ボタンまたは「ワーカー」ボタン (基本的なクライアント/サーバー モデル) を選択します。ユーザーの選択に基づいて、アプリケーションは別のビュー (MasterViewController または WorkerViewController) をロードすることになっています。ここで、アプリケーションを実行すると、印刷コマンドに従って「マスター」ボタンを選択した場合、私のプログラムでは、「masterButtonPressed - Stage 1」と「」が出力されます。間違った?私が言ったように、「マスター」ボタンを押してもビューは変わりません。ご協力いただきありがとうございます!
MainScreenViewController.h
MainScreenViewController.m
ErwinAppDelegate.h
ErwinAppDelegate.m
objective-c - UIWindow と UIView addSubview 質問
addSubview メソッドは実際にビューをアプリケーションにロードしますか? 私が質問している理由は、アプリケーションに 2 つのビューがあるためです。アプリケーション デリゲートは、2 つのビューをサブビューとして追加し、ビューの 1 つを前面に表示します。これで、各ビューの viewDidLoad メソッドのそれぞれに print ステートメントができました。アプリケーションを実行すると、アプリケーション デリゲートはビューをサブビューとしてロードし、各ビューがロードされると、実際に、各 viewDidLoad メソッドに配置したステートメントがコンソールに出力されます。これはこれを行うことになっていますか?
iphone - iPhone Dev - UIToolbar はウィンドウまたはビューに入りますか?
UIToolbar をウィンドウの一番下に配置し、その上にビューを配置する必要があります (ビューがツールバーの下に継続しないようにするため)、またはビューをウィンドウ全体に表示してツールバーを追加する必要がありますビューのサブビュー?だから私の質問は、ツールバーはビューまたはウィンドウのサブビューであるべきですか? - ウィンドウ: ツールバーはビューと同じレベルにあり、重なることはありません。 - ビュー: ビュー内にあります。
ありがとう!!
iphone - どの「ビュー」に触れたかに関係なく、タッチ座標を取得する方法は?
私のViewControllerには、いくつかのカスタムセルを含むUITableViewがあります。セルに触れると、そこにあるタッチ座標を UIViewController に取得したいと考えています。問題は、UITableView で占有されていない画面の部分からしか座標を取得できないことです...、UITableView を使用して画面の部分にタッチすると、座標が NSLogged として (0.000, 0.000) 返されます。たまたまタッチしたビューに関係なく、画面の座標を取得するにはどうすればよいですか? UIScreen から開始しますか? UIウィンドウ?...
質問: どの「ビュー」に触れたかに関係なく、タッチ座標を取得する方法を教えてください。
iphone - obj_stack_overflow または EXC_BAD_ACCESS 例外を引き起こす「通常の」UIButton
それは確かに無害に見えます。私の App Delegate では、起動時にヒントを表示するフラグのNSUserDefaultsをチェックします。設定されている場合は、 の最後に次のapplicationDidFinishLaunching:
ようにします。
アイデアは、このビューを一時的に表示することです。(これはモーダル VC ではないことに注意してください。この時点ではナビゲーション コントローラーはありません。また、このビューにはナビゲーション バーもありません。)
このビューが閉じられたら、プリエンプトされたUITabBarControllerのビューをウィンドウに追加して遷移し、ヒント ビューをメイン ウィンドウから削除します。私はまだビューの却下ポイントに到達していません。
私の TipsView の VC は、多かれ少なかれ次のように配線されています。
ソースには、3 つのIBAction呼び出しすべての宣言と定義が含まれています。今のところ二人は何もしていません。3 番目のものは、ヒントtext
を変更し、サイズを変更して収まるようにし、スクロール ビューcontentSize
を一致するように調整します。
アプリを実行すると、TipsViewControllerビューが正常に表示されます。ヒントのテキストをスクロールすることもできます。ただし、任意のUIButtonで touch-up-inside をトリガーすると、Xcode はソース (各IBActionにブレークポイントを配置した場所) に私を植え付け始めます…そして、または のいずれかで救済しEXC_BAD_ACCESS
ますobj_stack_overflow
。
これを、VC、ビュー、およびボタンがあるアプリの他の部分と比較しました。この場合、 VC をナビゲーション コントローラーにプッシュするのではなく、アプリのウィンドウのサブビューとして VC のビューを追加したことを除いて、すべての点で同じです。さらに、View Controller Programming Guide for iPhone OS docs は、これは公正なゲームであると述べています。
アプリケーションで単一のビュー コントローラーを使用する場合、ビュー コントローラーをタブ バーまたはナビゲーション コントローラーに追加する代わりに、そのビューをウィンドウに追加します。
確かに、翼で待機しているUITabBarControllerがあり、その中にUINavigationControllers (および他の VC) を含むタブがあります。ただし、ヒント ビューが表示されている場合、タブ バー コントローラーのビューはまだウィンドウに追加されていません。意図は、ヒントの表示が終わった後にそれを交換することです。言い換えれば、すべての意図と目的のために、私たちは一時的に 1 つの VC が参加しているように振る舞っています。その後、タブ バーに切り替えて、先端の VC を破棄します。
おそらく私は微妙に間違ったことをしていますか?より良い方法はありますか?(「もっといい方法があるに違いない!」)
スタック トレースの例:
トレースからわかるように、最終的にはdoesNotRecognizeSelector:
… になりますが、ヒントの VC ソースでメソッドを明確に確認できます。さらに、それらはすべて配線されています。(IBには複数の配線などはありません。ファイルの所有者の関係に至るまで、すべてがうまくいっています。)
手がかりは歓迎/感謝します!
iphone - iPhone - UIWindow 全体で UIView の位置を取得する
a の位置は明らかにorなどUIView
によって決定できますが、これは直接のスーパービューに関連するの位置のみを返します。view.center
view.frame
UIView
UIView
320x480 座標系全体での位置を決定する必要があります。たとえば、がウィンドウ内の位置UIView
にある場合UITableViewCell
、スーパービューに関係なく劇的に変化する可能性があります。
これが可能かどうか、またどのように可能かについてのアイデアはありますか?
乾杯 :)
iphone - makeKeyAndVisible & makeKeyWindow - iphone の uiwindow
すべてのアプリケーションで、
[window makeKeyAndVisible] と常に書かれています。
makeKey とはどういう意味ですか?
iphone - xcode iPhone SDK で UIWindow を追加する
UIApplicationがすぐに表示されないように、main.mファイルを変更する必要があるプロジェクトを作成しているため、main.mから次の行を削除しました
これらの行を AppDelegate から削除しました
そして、私は私のいくつかの行を追加しました。現在、UIWindow はデフォルトでは表示されません。しかし、私のコードが実行された後、ウィンドウを作成してメッセージを表示したいと思います。
main.mにUIApplicationがない場合にUIWindowを作成するには?
iphone - UIWindowの色を別のクラスから変更するにはどうすればよいですか?
アクションがクラスMyControllerに送信されるときに、UIWindowの背景色を変更しようとしています。ただし、UIWindowはAppDelegateクラスに存在するため、を使用して変更するための変数にアクセスできません。
MyControllerで。MyController.mのコードは次のとおりです。
そして、これがAppDelegate.hのコードです。
AppDelegateクラスにメソッドchangeColorToRed...を実装しようとしましたが、そのメソッドは変数window
にアクセスできるため、MyControllerのメソッドからそれを呼び出す方法がありませんsliderChanged
でした。
別のクラスのUIWindow*ウィンドウを変更するにはどうすればよいですか?