如何更改默认主页图标

时间:2014-12-24 20:13:43

标签: css jsf primefaces

我的默认应用主题是Redmond,我希望通过面包屑使用不同的主页图标颜色。

我在pom.xml中添加了hot-sneaks主题,以便使用不同的颜色。

<dependency>
        <groupId>org.primefaces.themes</groupId>
        <artifactId>hot-sneaks</artifactId>
        <version>1.0.10</version>
        <scope>compile</scope>
    </dependency>

如何更改DefaultMenuItem中的主页图标?

private void createHomeMenu() {
    // Create home menuItem
    DefaultMenuItem home = new DefaultMenuItem();
    home.setIcon( ?? );
    home.setAjax(true);

    breadCrumbModel.addElement(home);
}

由于

1 个答案:

答案 0 :(得分:1)

Primefaces使用jQuery themeroller来设置UI样式。 Primefaces中所有使用过的图标都来自那里。因此,您可以从jquery icons选择满意的图标。

public class BreadcrumbView {

    private MenuModel model;

    @PostConstruct
    public void init() {
        model = new DefaultMenuModel();

        DefaultMenuItem item = new DefaultMenuItem("External");
        item.setUrl("http://www.primefaces.org");
        item.setIcon("ui-icon-home");
        model.addElement(item);

    }

    public MenuModel getModel() {
        return model;
    }
}

但是,您可以使用css样式类指定自定义图标:

public class BreadcrumbView {

    private MenuModel model;

    @PostConstruct
    public void init() {
        model = new DefaultMenuModel();

        DefaultMenuItem item = new DefaultMenuItem("External");
        item.setUrl("http://www.primefaces.org");
        item.setIcon("xlogo");
        model.addElement(item);

    }

    public MenuModel getModel() {
        return model;
    }
}

并加载位于resources/default/images/icons文件夹的图片,如下所示:

.xlogo {
    background: url('#{resource['default:images/icons/x_logo.png']}') no-repeat;
    height:16px;
    width:16px;
}