3

sencha touch 2 でタイトルバーの中央に画像を配置する必要がありますが、できません! jsやCSSは触ってるけど無理…。ありがとう!

4

3 に答える 3

5

これを試してみてください。

その非常に単純な...タイトル:「すべての場所で画像タグを与える」

于 2012-09-26T11:31:04.623 に答える
3

あなたは試すことができsetTitle('<div class="logo"/>') ます

.logo {
    background: url('../images/logo.png')  no-repeat center;
    width:100px; 
    height:40px
}
于 2012-09-26T10:59:15.247 に答える
0

ImageTitleBar クラス。

Ext.define('myapp.controls.ImageTitleBar', {
    extend: 'Ext.TitleBar',
    alias: 'widget.imageTitleBar',

    requires: [
        'Ext.Img'
    ],

    config: {
        imageSource: ''
    },

    applyInitialItems: function(items) {
        var me = this,
            defaults = me.getDefaults() || {};

        me.initialItems = items;

        me.leftBox = me.add({
            xtype: 'container',
            style: 'position: relative',
            layout: {
                type: 'hbox',
                align: 'center'
            },
            listeners: {
                resize: 'refreshTitlePosition',
                scope: me
            }
        });

        me.spacer = me.add({
            xtype: 'component',
            style: 'position: relative',
            flex: 1,
            listeners: {
                resize: 'refreshTitlePosition',
                scope: me
            }
        });

        me.rightBox = me.add({
            xtype: 'container',
            style: 'position: relative',
            layout: {
                type: 'hbox',
                align: 'center'
            },
            listeners: {
                resize: 'refreshTitlePosition',
                scope: me
            }
        });

        me.titleComponent = me.add({
            xtype: 'container',
            hidden: defaults.hidden,
            centered: true,

            layout: {
                type: 'hbox',
                align: 'middle'
            }
        });

        me.titleImage = me.titleComponent.add({
            xtype: 'img',
            width: 36,
            height: 36
        })

        me.titleLabel = me.titleComponent.add({
            xtype: 'title'
        });

        me.doAdd = me.doBoxAdd;
        me.remove = me.doBoxRemove;
        me.doInsert = me.doBoxInsert;
    },


    updateTitle: function(newTitle) {
        this.titleLabel.setTitle(newTitle);
        this.titleLabel.setHidden(!newTitle);

        if (this.isPainted()) {
            this.refreshTitlePosition();
        }
    },

    updateImageSource: function(newImageSource) {
        this.titleImage.setSrc(newImageSource);
        this.titleImage.setHidden(!newImageSource);

        if (this.isPainted()) {
            this.refreshTitlePosition();
        }
    }
})
于 2013-04-19T04:54:37.300 に答える