1

sencha touch 2では、他のビューを出し入れするExt.navigation.Viewことができます。これらの他のビューは、およびのようなイベントを発生させます。悲しいことに、これらのイベントは、プッシュするとこの順序で発生します:(太字のイベントに注意してください)push()pop()hideshow

  1. 初期化
  2. 隠れる
  3. 活性化
  4. 公演

ポップするときは次のようになります。

  1. 非アクティブ化
  2. 隠れる
  3. 公演
  4. 削除する
  5. 破壊する

showしたがって、どちらか一方に依存することhideは、両方の状況で両方が解雇されるため、最善のアイデアではありません。
私はこれをバグだと考えており、同様のことがすでに議論されています。それにもかかわらず、この動作は、私が使用しているバージョン(ST 2.0.1.1)でも存在し、フォーラムの@rdouganの説明によると:

この背後にある理由は、アイテムがカードレイアウトから削除されると、実際には別の場所に表示される可能性があるためです。または、フロート可能に変更されている可能性があります。したがって、アイテムを元の表示状態に戻す必要があります。

それも変更されません。それで、私はどのイベントが実際に起こっているのかを見つけようとしていました。

4

1 に答える 1

1

この問題には解決策があります。コントローラではなく、ビュー内のイベントをリッスンすると仮定すると、次の小さなスニペットを使用できます。

Ext.Array.contains(this.up('navigationview').getActiveItem().getXTypes().split('/'), this.xtype)

ビューが実際に表示されているか(true)、非表示になっている()かを確認しますfalse。もちろん、それをxtype機能させるために使用しているビューで独自の構成プロパティを定義する必要があります。私の場合、それはExt.Panelです。

于 2012-06-14T14:56:05.297 に答える