0

アコーディオン レイアウトのパネルは、別の 1 つのアイテムと共に vbox に含まれます。

私には2つの問題があります:

  1. アコーディオン レイアウトのパネルに flex を設定しようとすると、「[E] レイアウトの実行に失敗しました」というエラーが発生します。
  2. const によって高さが固定されると、期待どおりに機能しません。最初のパネルが折りたたまれません。

コードの例を次に示します。

Ext.create('Ext.panel.Panel', {
    title: 'Accordion Layout',
    width: 300,
    height: 500,
    layout: 'vbox',
    items: [{
        xtype: 'datefield'
    }, {
        defaults: {
            // applied to each contained panel
            bodyStyle: 'padding:15px'
        },
        layout: {
            // layout-specific configs go here
            type: 'accordion',
            titleCollapse: true,
            animate: true
        },
        items: [{
            title: 'Panel 1',
            html: 'Panel content 1!'
        }, {
            title: 'Panel 2',
            html: 'Panel content 2!'
        }, {
            title: 'Panel 3',
            html: 'Panel content 3!'
        }],
    }],
    renderTo: Ext.getBody()
});

http://jsfiddle.net/6DHM4/1/

4

2 に答える 2

1

エラーを再現できませんでしたがflex: 1layout: 'vbox'

layout: {
   type: 'vbox',
   align: 'stretch'
}

このフィドルを参照)

于 2013-09-17T00:36:30.730 に答える
0

「vbox」に対してレイアウト「アンカー」を使用するのが正しい方法でしょうか? そうやってみる?

Ext.create('Ext.panel.Panel', {
title: 'Accordion Layout',
width: 300,
height: 500,    
layout: 'anchor',
items: [
            {xtype: 'datefield'},
            {
             defaults: {
               // applied to each contained panel
               bodyStyle: 'padding:15px'
               ,anchor: '100%'
             },

    ...

理由はわかりませんが、jsfiddle.net でテストすると、「最初のパネルが折りたたまれません」というバグが表示されます。しかし、たとえばhttp://try.sencha.com/でテストすると、問題なく動作します。

于 2013-06-24T07:40:45.217 に答える