我想提供一个使用YUI3更改选项卡的附加链接.
我有一个分布在多个标签上的表单,所以在标签内容的底部我想要一个"继续"链接,它将用于下一个标签.
有任何想法吗.
我正在尝试<p:tab>动态添加PrimeFaces .在添加第二个选项卡时,我收到以下异常:
"java.lang.IllegalStateException:组件ID tab0已在视图中找到".
我怎么解决这个问题?
这是视图代码:
<h:form prependId="false">
<p:tabView id="tabview" dynamic="true" cache="false"
binding="#{testBean.tabView}"
activeIndex="#{testBean.activeTab}" >
<h:commandButton value="Close" action="#{testBean.removeTab}"/>
</p:tabView>
<h:commandButton value="Add Tab" action="#{testBean.addTab}"/>
</h:form>
Run Code Online (Sandbox Code Playgroud)
这是bean代码:
public String addTab() {
String tabId="tab"+id;
System.out.println("Gen Id: "+tabId);
tab = new Tab();
tab.setTitle("Title: "+tabId);
tab.setId(tabId);
System.out.println("Tab Id: "+tab.getId());
tabView.getChildren().add(id,this.tab);
id++;
return "tabtest.jsf";
}
public String removeTab() {
tabView.getChildren().remove(activeTab);
return "tabtest.jsf";
}
Run Code Online (Sandbox Code Playgroud) 我尝试在不同的选项卡中使用ui:include标记包含多个源页面路径.问题是当我将源页面路径视为静态时,意味着将显示页面,但如果从支持bean提供源页面路径意味着它将不包括页面.
这是我的代码
template.xhtml:
<p:layoutUnit position="center" id="layoutCenter">
<h:form id="tempFormId">
<p:tabView value="#{multiTabBean.tabsList}" var="useCase"
activeIndex="#{multiTabBean.activeTabIndex}">
<p:tab title="#{useCase.title}" closable="true">
<f:subview>
<h:panelGroup id="mainTempPanelGroupId" layout="block">
<ui:include src="#{useCase.path}" />
</h:panelGroup>
</f:subview>
</p:tab>
</p:tabView>
</h:form>
</p:layoutUnit>
Run Code Online (Sandbox Code Playgroud)
豆:
public String menuAction() {
menuBtnRendered = true;
FacesContext facesContext = FacesContext.getCurrentInstance();
ExternalContext externalContext = facesContext.getExternalContext();
selectedModuleViewId = externalContext.getRequestParameterMap().get(
"moduleViewId");
tabsList.add(new Tab(getTabId(selectedModuleViewId),
selectedModuleViewId, getModulePath(selectedModuleViewId)));
return null;
}
Run Code Online (Sandbox Code Playgroud)
我正在使用@ViewScoped.
这是我的app.component.ts:
import { Component } from '@angular/core';
@Component({
templateUrl: 'app/app.component.html',
selector: 'my-app'
})
export class AppComponent {
}
Run Code Online (Sandbox Code Playgroud)
这是我的app.component.html:
<p-tabView>
<p-tabPanel header="Home" leftIcon="fa-bar-chart-o">
<home-app></home-app>
</p-tabPanel>
<p-tabPanel header="Hierarquia" leftIcon="fa-sitemap">
<tree-app></tree-app>
</p-tabPanel>
<p-tabPanel header="Configurações" leftIcon="fa-cog">
<config-app></config-app>
</p-tabPanel>
</p-tabView>
Run Code Online (Sandbox Code Playgroud)
加载tabView时,我的三个组件(home,tree和config)已同时加载.但是,我希望在选择其选项卡时加载一个组件.怎么做?
PS:如果有帮助,TabView有一个onChange事件.
我正在使用 SwiftUI 进行一个副项目,我有一个场景,我需要在tabItems我的TabView.
我已经用我的模型设置了所有东西,绑定等等。但是我一直在寻找 2 天来找到一个modifier可以展示徽章的东西,但不幸的是我所有的研究都陷入了死胡同。
我已通过苹果SwiftUI API文档去了TabView的搜查这里堆栈溢出,也当然吨的谷歌搜索结果的链接。
我正在观察一个包含项目列表的环境对象,我知道如何将徽章与我的项目计数绑定,所以当我有任何项目更新(添加、删除)时,徽章将被更新。但我无法找到一种方法来在tabItem.
非常感谢任何帮助!
有没有一种简单的方法可以使用 SwiftUI 获得更可定制的标签栏视图?我主要是从 macOS 的角度提出问题(尽管适用于任何系统的将是理想的),因为标准版本的 macOS 实现存在各种问题:
当前代码:
import SwiftUI
struct SimpleTabView: View {
@State private var selection = 0
var body: some View {
TabView(selection: $selection) {
HStack {
Spacer()
VStack {
Spacer()
Text("First Tab!")
Spacer()
}
Spacer()
}
.background(Color.blue)
.tabItem {
VStack {
Image("icons.general.home")
Text("Tab 1")
}
}
.tag(0)
HStack {
Spacer()
VStack {
Spacer()
Text("Second Tab!")
Spacer()
}
Spacer()
}
.background(Color.red)
.tabItem {
VStack {
Image("icons.general.list")
Text("Tab 2")
}
}
.tag(1)
HStack …Run Code Online (Sandbox Code Playgroud) 考虑到下面的代码,我希望我的 TabView 在显示选项卡视图时显示随机计算的图像,但事实并非如此。它将始终在索引 0 处显示第一个图像。如果我在 TabView 初始化程序(即.constant(n))中对选择进行硬编码,那么它将正确显示所选图像。我已经对此提交了雷达(FB7844985),但想检查我是否遗漏了一些明显的东西?
struct ContentView: View {
let assets: [String] = (1...32).map { "preview_\($0)"}
@State private var selection: Int = 0
@State private var isPresented: Bool = false
var body: some View {
VStack {
Button("Random element") {
selection = Int.random(in: 1...32)
isPresented = true
}
}
.sheet(isPresented: $isPresented) {
SlideshowView(selection: $selection, assets: assets)
}
}
}
struct SlideshowView: View {
@Binding var selection: Int
var assets: [String]
var body: some View {
TabView(selection: …Run Code Online (Sandbox Code Playgroud) 我想显示一个TabView以显示不同的屏幕。我的第一个屏幕(主页)显示三个按钮,可以选择要显示的三个屏幕之一。但是(!)我必须检查是否重复选择了一个选项卡以在这种情况下触发特殊操作。
检测 screen2 的重复选择工作正常,但我无法通过按钮设置选择。我曾尝试使用@EnvironmentalObject但在我的 TabView.selection 中未观察到对此对象的更改。
import SwiftUI
@main
struct TestApp: App {
static let kIndex0 = 0
static let kIndex1 = 1
static let kIndex2 = 2
var appState = AppState()
@State private var selection = TestApp.kIndex0
var body: some Scene {
// this code is required to detect a repeated selection of
// the same tab to trigger a special action
let index = Binding<Int>(
get: { self.selection },
set: {
if $0 == …Run Code Online (Sandbox Code Playgroud) 我已经完全更改了代码。但是活动索引仍然显示出问题。有时它被调用,而有时它不被调用。以下xhtml代码有什么问题?
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui" >
<h:head>
<title>Admin Panel</title>
<style type="text/css">
.ui-accordion .ui-accordion-content{
background-color: #eedae3;
}
.ui-accordion .ui-accordion-header {
height: 30px;
background-color: #e74f54;
}
.ui-tabs .ui-tabs-nav li{
background-color: #6f97df;
height: 35px;
}
.datatable{
background-color: #eedae3;
}
</style>
</h:head>
<h:body>
<p:tabView id="tabView" activeIndex="#{profileInfoManagedBean.myCurrentTab}" >
<p:ajax event="tabChange" listener="#{profileInfoManagedBean.tabIsChangedKana}" />
<p:tab id="locationInfoTab" title="Location Info">
<h:form id="form1">
<p:growl showDetail="true" />
<p:panel header="New Country">
<h:panelGrid columns="3" cellpadding="5" cellspacing="5">
<p:column>
<h:outputLabel for="country" …Run Code Online (Sandbox Code Playgroud) 我有一个TabView,其中有3个TabS,说tab1,tab2,tab3.每个Tab都有一些小部件.我希望有一些信号机制,所以当我进入时tab3,我想设置一些小部件(例如a TextField)的状态,tab3当我离开它时,我想重置它们的状态.
关于如何实现这一点的任何指针?当我阅读关于TabView和的Qt 5.3文档时Tab,我没有发现它们暴露的任何信号.
信令可以是内tab3或之间Tabview和tab3.我对其中任何一个都很好.