按钮模板,标题抖动

                <ControlTemplate TargetType="{x:Type Button}">
                    <Border x:Name="btn_border" Background="{TemplateBinding Background}" >

                        <TextBlock x:Name="btn_text" Opacity="0" RenderTransformOrigin="0.5,0.5" Text="{TemplateBinding Content}" FontSize="18" FontFamily="Candara" Foreground="Red" FontWeight="Normal" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0 5 0 0" >
                             <TextBlock.RenderTransform>
                                <RotateTransform></RotateTransform>
                            </TextBlock.RenderTransform>
                        </TextBlock>
                    </Border>
                    <ControlTemplate.Triggers>
                        <Trigger Property="IsMouseOver" Value="True">
                            <Setter Property="Cursor" Value="Hand" TargetName="btn_border" />
                            <Setter Property="Opacity" Value="1"  TargetName="btn_text">

                            </Setter>
                        </Trigger>
                        <EventTrigger  RoutedEvent="Button.MouseEnter">
                            <EventTrigger.Actions>
                                <BeginStoryboard>
                                    <Storyboard >
                                        <DoubleAnimation  Storyboard.TargetName="btn_text"
                                                     Storyboard.TargetProperty="RenderTransform.Angle"
                                                     BeginTime="00:00:00" From="0" To="5" Duration="00:00:0.1"
                                                     AutoReverse="True"   RepeatBehavior="Forever"  />
                                    </Storyboard>
                                </BeginStoryboard>
                            </EventTrigger.Actions>
                        </EventTrigger>
                        <EventTrigger RoutedEvent="Button.MouseLeave">
                            <BeginStoryboard>
                                <Storyboard>
                                    <DoubleAnimation Storyboard.TargetName="btn_text" Storyboard.TargetProperty="RenderTransform.Angle"
                                                   BeginTime="00:00:00" From="0" To="0" Duration="00:00:0.1" AutoReverse="True"/>
                                </Storyboard>
                            </BeginStoryboard>
                        </EventTrigger>
                    </ControlTemplate.Triggers>

                </ControlTemplate>

关键在与在需要变换的元素内声明 元素中心 RenderTransformOrigin(0.5,0.5)

<XX.RenderTransform>

<RotateTransform></RotateTransform>

</XX.RenderTransform>

然后在<Template.Tragers>中定义路由事件控制,定义故事板,触发

时间: 2024-10-07 14:53:59

按钮模板,标题抖动的相关文章

tabbar选中按钮的标题颜色和字体

@implementation XMGTabBarController /* 问题: 1.选中按钮的图片被渲染 -> iOS7之后默认tabBar上按钮图片都会被渲染 1.修改图片 2.通过代码 √ 2.选中按钮的标题颜色:黑色 标题字体大 -> 对应子控制器的tabBarItem 3.发布按钮显示不出来 */ // 只会调用一次 + (void)load { // 获取哪个类中UITabBarItem,appearance:只能在控件显示之前设置,才有作用 UITabBarItem *ite

iOS导航栏NavigationBar的颜色,按钮和标题以及字体颜色

首先,层级关系: leftBarButtonItem.rightBarButtonItem.title都是加在UINavigationItem上的,UINavigationItem再加在NavigationBar上,NavigationBar对应唯一的NavigationController. 1. 设置导航栏NavigationBar的背景颜色: 在appdelegate里创建UINavigationController后 设置 (1.) setBarTintColor : 设置Nagivat

设置返回按钮的标题

它一般是由一个左箭头加上一级ViewController的标题构成.如果我们想将这个标题文字修改成其它内容,甚至是设置为空,则需要额外想办法. 最省事的办法是将上一级ViewController的title修改为空或其它.但这会带来一个问题,即上一级ViewController的标题也会被修改,如果这个ViewController是位于TabBarController中,则TabBarItem的标题也会被修改. 还有一种办法是在viewDidAppear方法中使用例如这样的语句: self.na

iOS中 按钮和标题完美各种排列/完美教程 韩俊强的博客

每日更新关注:http://weibo.com/hanjunqiang  新浪微博! 前言:最近常常用到按钮和相应标题的组合,当按钮设置图片加标题时,触发范围较小,不易触发,最重要的是还要调试偏移量,相信研究过的开发者都很头疼这一点,那我我就想解决,于是在网上研究了一番,个人总结封装了一个,觉得很棒,推荐给大家! 下面看教程: 整体是对UIButton的自定义封装: //UIButton+UIButtonSetEdgeInsets.h #import <UIKit/UIKit.h> @inte

有关怎么在不创建新的按钮的前提下改变返回按钮的标题

只需要在创建第二个控制器之前添加这么一段代码: UIBarButtonItem *backItem = [[UIBarButtonItem alloc] init]; backItem.title = @"返回"; self.navigationItem.backBarButtonItem = backItem; 那么在跳转的时候,返回按钮显示的就不是第一个界面的标题.而是“返回”

UINavigationController的navigationBar的常用设置(按钮,标题,颜色)

http://blog.csdn.net/u010229677白白手游专栏 使用: ViewController* vc = [[ViewController alloc] init]; self.window.rootViewController = [[UINavigationController alloc] initWithRootViewController:vc]; self.window.backgroundColor = [UIColor whiteColor]; [self.w

ios彩票标题按钮(左文字右图片)

1 #import <UIKit/UIKit.h> 2 3 @interface NJTitleButton : UIButton 4 5 @end 6 7 8 #import "NJTitleButton.h" 9 10 @interface NJTitleButton () 11 @property (nonatomic, strong) UIFont *myFont; 12 @end 13 14 @implementation NJTitleButton 15 16

自定义iOS7导航栏背景,标题和返回按钮文字颜色

转自:http://blog.csdn.net/mad1989/article/details/41516743 在iOS7下,默认导航栏背景,颜色是这样的,接下来我们就进行自定义,如果你仅仅是更改一下背景和颜色,代码会很简单,不需要很复杂的自定义View来替代leftBarItem 更改导航栏的背景和文字Color 方法一: [objc] view plaincopy //set NavigationBar 背景颜色&title 颜色 [self.navigationController.na

【转】自定义iOS7导航栏背景,标题和返回按钮文字颜色 -- 不错不错!!

原文网址:http://blog.csdn.net/mad1989/article/details/41516743 在iOS7下,默认导航栏背景,颜色是这样的,接下来我们就进行自定义,如果你仅仅是更改一下背景和颜色,代码会很简单,不需要很复杂的自定义View来替代leftBarItem 更改导航栏的背景和文字Color 方法一: [objc] view plain copy //set NavigationBar 背景颜色&title 颜色 [self.navigationController