2017-05-08 8 views
0

現在開いているウィンドウを取得する方法はありますか?チタン合金の現在のウィンドウを開きますか?

コントローラでは、this.getView()を使用して、コントローラの相対表示を取得することができます。

コントローラはプロジェクト内の任意のビューを開くことができるので、コントローラのビューを知りたいだけでなく、一番上の(フォーカスされた)ビューが必要です。

答えて

1

$ .getView()を使用して、付属のコントローラからビューにアクセスします。たとえばIDなどでアイテムにアクセスする場合。 idが "myTextField"のTextFieldは$ .myTextFieldになります。

あなたが現在開いているコントローラ/ビューが一番上のビューであるため、現在のトップフォーカスビューを知りたい場合は、そのアプリケーションが何をしているのかを知る必要があります。

なぜトップビューを知る必要がありますか?

+0

私がSlack経由で言ったように、「Appの構造はちょっと混乱していて、アプリケーションは何を見ているのか/コントローラの関係に何の制御もない」 – Machado

+0

アプリの書き換え/リファクタリングが必要 - 合金アプリは混乱してはいけません! ;) – jasonkneen

+0

これは私が本当に知っている一つのことです。 hehe これについてのヒント – Machado

0

開いているすべてのウィンドウ、好ましくはそのコントローラーを追跡する必要があります。

this answerは、いくつかの洞察を与えるかもしれません。

+0

合金では、これは必要ではありません。すべての開いているウィンドウを追跡する必要はありませんし、そうした場合は正しく実行しないと、メモリリークなどの問題が発生する可能性があります。 – jasonkneen

+0

私はこのシナリオを検討していません: 現在のウィンドウの下からアニメートするビューを表示するには、開いているウィンドウを追跡せずにそのビューを埋め込むために現在開いているウィンドウをどのように取得できますか?ウィンドウを閉じて、常に一番上のウィンドウにハンドルを持っていますか? 合金はどのようにすべてのウィンドウでクローズドコールを追跡せずにこれを達成するのに役立ちますか? @jasonkneen、ありがとう – TheFuquan

+0

あなたはビューを保持し、ちょうど.open()を透明なウィンドウを作成することができます。私はこの技術を使って、iOSやAndroid上で進捗インジケータとトースト通知を表示しています。 – jasonkneen

関連する問題