カードレイアウトも含むセグメント化されたボタンを備えたTabBarナビゲーションがあります。すべて正常に動作します。ただし、セグメント化されたボタンを画面の中央に配置しようとしています。伸ばしたくない。メインビューを含め、すべてのコードを SenchaFiddleに配置しました
Ext.define('SenchaFiddle.view.SegView', { 拡張: 'Ext.Container', xtype: 'セグビュー', 構成: { レイアウト: 'フィット', 項目: [ { レイアウト: 'vbox', 項目: [ { xtype: 'セグメント化されたボタン', allowDepress: 真、 項目: [ { テキスト: 'オプション 1', 押された:真、 ハンドラ: 関数() { console.log("選択された #1"); Ext.getCmp('カードコンテナ').setActiveItem(0); } }、 { テキスト: 'オプション 2', ハンドラ: 関数() { Ext.Msg.alert("foo"); Ext.getCmp('カードコンテナ').setActiveItem(1); } }、 { テキスト: 'オプション 3', ハンドラ: 関数() { Ext.getCmp('カードコンテナ').setActiveItem(2); } } ] }、 { xtype: 'コンテナ', フレックス: 10, id: 'カードコンテナ', レイアウト: { タイプ: 「カード」 }、 項目: [ { xtype: 'option-view1', スタイル: '背景色: #fff' }、 { html: 'バー', スタイル: '背景色: #666' }、 { html: 'バズ', スタイル: '背景色: #333' } ] } ] } ] } });
Ext.define('SenchaFiddle.view.MainView', { 拡張: 'Ext.tab.Panel', xtype: 'テストビュー', id: 'テストビュー', 構成: { tabBarPosition:'下', レイアウト: { タイプ: 'カード', アニメーション: { 持続時間: 300, イージング: 'イーズインアウト', タイプ: 'スライド', 方向: 「左」 } }、 フルスクリーン: 真、 項目: [ { タイトル: 'Tab1', iconCls: '情報', xtype: 'パネル', レイアウト: { タイプ: 'フィット' }、 項目: [ { タイトル: 'タイトル 1', xtype: 'ツールバー', ドッキング:「トップ」 }、 { id: '画像タブ', html: '読み込み中...' }、 { xtype: 'セグビュー', レイアウト:「フィット」 } ] }、 { タイトル: 'Tab2', iconCls: 'アクション', 項目: [ { タイトル: 'タイトル 2', xtype: 'ツールバー', ドッキング:「トップ」 }、 { id: 'ニュースタブ', html: 'バーを読み込んでいます...' } ] } ] } });