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 回答