首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flex TabNavigator的样式按钮

Flex TabNavigator的样式按钮
EN

Stack Overflow用户
提问于 2010-05-23 03:16:37
回答 2查看 7.3K关注 0票数 0

我创建了一个TabNavigator,里面有一堆NavigatorContent,我想只给选项卡本身的按钮设置皮肤。所以我添加了一个skinClass,但在文档中看起来并没有专门针对该按钮的皮肤部分。

要实现这一点,我必须对mx:TabNavigator本身进行样式化吗?我希望不是这样,因为我不知道如何设计mx组件的样式,并且更习惯于设计spark的样式。

有没有其他我没想过的选择?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-05-23 06:53:49

由于TabNavigator是一个mx组件,因此您必须以旧的方式对其进行样式设置。您可以通过设置'tabStyleName‘样式来设置按钮的样式,即:

代码语言:javascript
复制
TabNavigator{
   tabStyleName: "myTabButton";
}

.myTabButton{
   skin: ClassReference("com.yournamespace.skins.TabButtonSkin");
}

您必须以旧的方式创建皮肤,您可能想要查看mx.skins.halo.Button类的示例,或者您可以使用degrafa或png。

注如果您愿意,也可以单独设置firstTabStyleName或lastTabStyleName。

编程皮肤示例:http://www.davidflatley.com/2007/12/17/programmatic-button-skins-in-flex-3/

降级示例:http://styleanderror.net/2010/02/creating-animated-programmatic-button-skins-in-degrafa/

票数 1
EN

Stack Overflow用户

发布于 2011-01-13 20:51:45

您可以编写自己的按钮外观,也可以使用此处的一个名为EnhancedButtonSkin.as的http://www.wabysabi.com/flex/enhancedbuttonskin/ (右键单击,查看源)。然后声明您的TabNavigator组件并指定它的tabStyleName。

代码语言:javascript
复制
<mx:TabNavigator y="0" height="100%" right="0" left="0" id="navigator" tabStyleName="tab">

现在是css:

代码语言:javascript
复制
 <fx:Style>
  .tab
  {
   upSkin:ClassReference('com.EnhancedButtonSkin');
   overSkin:ClassReference('com.EnhancedButtonSkin');
   downSkin:ClassReference('com.EnhancedButtonSkin');
   disabledSkin:ClassReference('com.EnhancedButtonSkin');
   selectedUpSkin:ClassReference('com.EnhancedButtonSkin');
   selectedOverSkin:ClassReference('com.EnhancedButtonSkin');
   selectedDownSkin:ClassReference('com.EnhancedButtonSkin');
   selectedDisabledSkin:ClassReference('com.EnhancedButtonSkin');

   cornerRadii: 5, 5, 0, 0;
   borderColors: #CC0000, #000000;
   overBorderColors: #003399, #003399;
   selectedBorderColors: #666666, #FFFFFF;
   borderThickness: 1;
   borderAlpha: 1;
   fillColors: #CC3300, #F98900;
   fillAlphas: 1, 1;
   fillColorRatios: 0, 255;
   overFillColors: #999999, #FFFFFF;
   overFillAlphas: 1, 1;
   overFillColorRatios: 0, 255;
   selectedFillColors: #999999, #FFFFFF;
   selectedFillAlphas: 1, 1;
   selectedFillColorRatios: 111, 255;
   highlightAlphas: 0, 0;
   color: #000000;
   textRollOverColor: #000000;
   fontSize: 13;
  }
 </fx:Style>

此css将显示: i.imgur.com/4HwD3.png

人头马

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2889444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档