Tab item is null?

Hey, this is my code:

NavbarItems items = new NavbarItems();

        Tabs tabs = new Tabs();

        for (var category : items.getHandler().getAllCategories()) {
            var categoryItem = new Tab(category.getName());
            categoryItem.addClassName("nav-category-item");
            categoryItem.setEnabled(false);
            tabs.add(categoryItem);

            for (var page : category.getPages()) {
                var pageItem = new Tab(page.getIcon(), new Span(page.getName()));
                pageItem.addClassName("nav-page-item");
                tabs.add(pageItem);
            }

        }

        tabs.setOrientation(Tabs.Orientation.VERTICAL);

        tabs.addSelectedChangeListener(event -> {
            System.out.println("Selected tab");
            System.out.println(event.getSelectedTab());
            System.out.println(event.getPreviousTab());
        });

        return tabs;

But the problem is, the selected and previous tab is just {} someone has a idea why?

Fixed it by changing the tab creation too:

var pageItem = new Tab();
                pageItem.setLabel(page.getName());
                pageItem.addClassName("nav-page-item");
                pageItem.addComponentAsFirst(page.getIcon());
                tabs.add(pageItem);
1 Like