零元学Expression Blend 4 - Chapter 44 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(下)
原文:零元学Expression Blend 4 - Chapter 44 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(下)
抱歉久等了!!!!
终於到了动画MenuBar的最终章罗!
?
?
抱歉久等了!!!!
终於到了动画MenuBar的最终章罗! :)
?
?
由於,本篇动画设定较多,为求步骤清楚,所以文章较为冗长
而小猴子因为篇幅的关系也已经删减了一部分入门观念的解说
(小建议:若是已经对动画等相关制作与设定、Visual State等有相当的了解,再看本篇会比较好懂喔!)
?
?
想观看有关入门动画的介绍,请点选这里~
如果想了解有关Visual State的介绍,请观看Ch32以及Ch33
?
?
?
另外,如果你没看过动画MenuBar的(上)篇、(中)篇
请先回顾前两章:
零元学Expression Blend 4 - Chapter 40 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(上)
零元学Expression Blend 4 - Chapter 41 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(中)
?
若是你已经会了前两章,那就开始吧!
?
?
?
?
01 第二层Menu的布局容器(Grid+Border+WrapPanel)
沿用(中)篇完成的MenuBar,我们要来制作第二层Menu
请在MenuBar下方置入一个Grid,命名为SecondMenu
![]()
?
?
接着,在Grid置入一个Border,命名为Menu1
![]()
?
?
利用Properties->Brushes->Gradient brush来制作第二层选单的背景颜色
![]()
?
?
(这里为了图片能清楚的示意,所以我事先放了一个白色的Rectangle在Border底下,色彩调整完後拿掉)
颜色请都选取为黑色#FF000000:
(1)Gradient Stop?? 0%、Alpha 80%
(2)Gradient Stop 30%、 Alpha 70%
(3)Gradient Stop 70% 、Alpha 70%
(4)Gradient Stop 100%、 Alpha 80%
?
?
接着,在命名为Menu1的Broder内,置入一个WrapPanel
![]()
?
?
并调整适当大小
![]()
?
?
02 运用HyperlinkButton制作Menu选项<
在WrapPanel放入HyperlinkButton,调整文字颜色为白色(Foreground->#FFFFFFFF)
![]()
?
?
为了让HyperlinkButton的外观,更合乎我们想要的样子,我们需要编辑它的Template
![]()
?
?
进到HyperlinkButton的Edit Template模式後
删掉我们不需要的UnderlineTextBlock、DisabledOverlay以及FocusVisualElement
![]()
?
?
并把contentPresenter的HorizontalAlignment以及VerticalAlignmen皆设定为Center使文字置中
![]()
?
?
03 丰富Menu选项的视觉效果
为了让选项的效果更丰富,我们来加一点东西:
(如图所示,一样是在Template模式下)
![]()
?
?
请置入一个Rectangle,并把颜色请都选取为白色->#FFFFFFFF
接着渐层设定如下:
(1)Gradient Stop 20% Alpha 0%
(2)Gradient Stop 95% Alpha 40%
(3)Gradient Stop 98% Alpha 75%
(4)Gradient Stop 100% Alpha 75%
?
?
完成後,会如下图:
![]()
?
?
切换到State,於Base状态下,请把contentPresenter->Appearance->Opacity设为0%
![]()
?
?
MouseOver状态下:
选取Rectangle,设定:
(1)於0.0秒时Opacity为0%
(2)於0.4秒时Opacity为100%,并且设定EasingFunction->Bounce Out (Bounces为3、Bounciness为2)
![]()
?
?
使contentPresenter:
(1)0.0秒时Properties->Transform->Translate X 设为10
![]()
?
?
(2)0.4秒时Translate X 为0,并且设定EasingFunction->Back InOut-> Amplitude为3
![]()
?
?
完成後,离开Template编辑模式
?
?
04 善用WrapPanel做选单的排列
复制多个HyperlinkButton
![]()
?
?
上图为WrapPanel的Orientatiion为Horizontal(水平)排列
请调整WrapPanel的Orientatiion为Vertical(垂直)排列
对照上下两图,应该可以发现明显的差异喔!
![]()
?
?
(WrapPanel是个很好用的布局容器,若有必要,我会再针对WrapPanel专门写一篇文章做介绍~)
?
?
05 第二层选单开阖设定
切到State,Base状态下,选取先前命名为Menu1的Border
把Center Point设定在最左上角,如下图:
![]()
?
?
因为於一般状态下,第二层选单是收起的,所以把Menu1的Scale X与 Scale Y由1设为0
![]()
?
?
新增一个State->Add state,并且命名为Menu1Open
![]()
?
?
展开效果:
於0.5秒,把Menu1的Scale X与 Scale Y还原为0->1,并设定EasingFunction->Exponential InOut 5
![]()
?
?
复制多个Menu1,并重新命名为Menu2、Menu3、Menu4.......
并且把Menu2、Menu3、Menu4.......移到对应MenuBar的适当位子下
别忘了State也要对应新增,并用一样的方式设定喔!
![]()
?
?
在(中)篇制作好的MenuBar->RadioButton下放入GoToStateAction:设定Menu1Open触发条件为MouseEnter
(其余的GoToStateAction也别忘了设定触发条件喔!)
![]()
?
?
当然,有开就要有关,所以我这边Add了一个名为AllMenuClose的State
一并选取Menu1~4後,把Properties->Appearance->Visibility设定为Collapsed
![]()
?
?
在Menu1~4下,放入GoToStateAction:设定AllMenuClose触发条件为MouseLeave
![]()
?
?
?
?
本篇最後成果:
很抱歉,阁下使用的浏览器并不支援 IFrame,不能正常浏览我的网页
?
?
附上本章范例:
?
?
?
辛苦了!!!看完一整篇,希望你已经学会如何应用了~
看似复杂的设定其实很简单,所有的效果都藏在简单的设定中呢!
善用这些小技巧,就能达到你想要的效果喔!
希望有机会,能分享更多有关Blend也可以做到的Flash动画效果!
?
?
(若有任何错误的地方,请各位前辈或同好能不吝指教,小女子都会虚心接受;若是你喜欢我的教学,请给我点鼓励,谢谢。)
?
一步一步迈向HIE之路
喜欢我文章请推我一下或给我个回应,你的鼓励会给我无限的动力喔!
若是您有其他问题或是特别需要,请在文章回应处留言,我会尽快回覆您
零元学Expression Blend 4 - Chapter 44 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(下)的更多相关文章
- 零元学Expression Blend 4 - Chapter 41 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(中)
原文:零元学Expression Blend 4 - Chapter 41 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(中) 我们接着进行动画MenuBar的制作 接续着上 ...
- 零元学Expression Blend 4 - Chapter 40 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(上)
原文:零元学Expression Blend 4 - Chapter 40 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(上) 一直以来都有人拿Flash的动画问我Blend ...
- 零元学Expression Design 4 - Chapter 1 入门界面简介
原文:零元学Expression Design 4 - Chapter 1 入门界面简介 Expression Design 是Expression系列里面的一员,更是Blend跟Web的好帮手 而在 ...
- 零元学Expression Design 4 - Chapter 6 教你如何在5分钟内做出文字立体感效果
原文:零元学Expression Design 4 - Chapter 6 教你如何在5分钟内做出文字立体感效果 又来一篇五分钟做设计啦~ 本篇将教大家如何运用Design内建工具Blend Path ...
- 零元学Expression Design 4 - Chapter 7 使用内建功能「Clone」来达成Path的影分身之术
原文:零元学Expression Design 4 - Chapter 7 使用内建功能「Clone」来达成Path的影分身之术 本章所介绍的是便利且快速的内建工具Clone ? 本章所介绍的是便利且 ...
- 零元学Expression Design 4 - Chapter 5 教你如何用自制笔刷在5分钟内做出设计感效果
原文:零元学Expression Design 4 - Chapter 5 教你如何用自制笔刷在5分钟内做出设计感效果 本章将教你如何运用笔刷与简单线条,只要5分钟,就能做出设计感效果 ? 本章将教你 ...
- 零元学Expression Design 4 - Chapter 4 教你如何自制超炫笔刷
原文:零元学Expression Design 4 - Chapter 4 教你如何自制超炫笔刷 在Chapter 2 有稍微讲过Design内建笔刷的用法,本章将教大家如何自制独一无二的笔刷,并且重 ...
- 零元学Expression Design 4 - Chapter 3 看小光被包围了!!如何活用「Text On Path」设计效果
原文:零元学Expression Design 4 - Chapter 3 看小光被包围了!!如何活用「Text On Path」设计效果 本章将教大家如何活用「Text On Path」,做出文绕图 ...
- 零元学Expression Design 4 - Chapter 2 熟悉Design并且快速设计出Silverlight网页
原文:零元学Expression Design 4 - Chapter 2 熟悉Design并且快速设计出Silverlight网页 本章将用带大家熟悉Design 4并制作简易的网页版面,也会让你了 ...
随机推荐
- C#中的“静态”
静态构造函数: C#的一个新特征是也能够给类编写无參数的静态构造函数. 编写静态构造函数的一个原因是,类有一些静态字段或属性,须要在第一次使用类之前.从外部源中初始化这些静态的字段和属性. .NET运 ...
- 稀疏编码(sparse code)与字典学习(dictionary learning)
Dictionary Learning Tools for Matlab. 1. 简介 字典 D∈RN×K(其中 K>N),共有 k 个原子,x∈RN×1 在字典 D 下的表示为 w,则获取较为 ...
- erlang tcp发包速度测试
http://blog.sina.com.cn/s/blog_96b8a1540101317m.html 这段时间我们的项目遇到广播包的一些性能问题,想起之前看到yufeng老大提到的1s广播40K包 ...
- web开发-MVC IoC 框架(转)
随着Web应用的商业逻辑包含逐渐复杂的公式分析计算.决策支持等,使客户机越 来越不堪重负,因此将系统的商业分离出来.单独形成一部分,这样三层结构产生了. 其中‘层’是逻辑上的划分. 三层体系结构是将整 ...
- jar命令+7z:创建,替换,修改,删除Jar, war, ear包中的文件
虽然现在已经有各种智能的IDE可以为我们生成jar包,war包,ear包,甚至带上了自动替换,部署的功能.但一定会有那么些时候,你需要修改或是替换jar包,war包,ear包中的某个文件而不是整个重新 ...
- 设置storyboard拉伸属性
- windows - Cygwin和MinGW有什么区别?(MinGW从Cygwin 1.3.3版本中分离出来)
windows - Cygwin和MinGW有什么区别? 我想让我的C ++项目跨平台,我正在考虑使用Cygwin / MinGW. 但是他们之间有什么区别呢? 另一个问题是,如果没有Cygwin / ...
- CORDOVA :添加cordova-plugin-file-opener2插件cordova打包报错
原文:CORDOVA :添加cordova-plugin-file-opener2插件cordova打包报错 最近在接触android项目,其中涉及到APP自动更新的问题,当新APP下载成功后需要打开 ...
- matlab 高级函数 —— circshift、squeeze
circshift:顾名思义,循环移动,循环的意义在于,移出的数据不丢失,而是来到队列的首部位置,也即其实是将原始序列视为一种圆环. 1. 基本用法 默认为右移. Y = circshift(A,K) ...
- 国产操作系统剽窃Linux内核可耻!
10月28日,新浪科技发表文章,题为"国产操作系统迎来利好:部委机构正大量採购",读后有感. 如今,国家进入法制时代.政府採购"国产操作系统",似乎成为一种&q ...