• IOS开源项目(3)之DAReloadActivity重加载(reload)按钮学习


    1 前言

    按钮也可以实现类似加载效果,今天我们就来学习一下一个类似于reload效果的按钮控件。

    2 详述

    该控件利用了QuartzCore框架的CABasicAnimation和CAAnimation类来进行动画控制,并使用了CABasicAnimation的代理方法,下面让我们来看一下部分代码:

    ZYReloadActivityButton.h:

    #import <UIKit/UIKit.h>
    
    @interface ZYReloadActivityButton : UIButton
    {
        BOOL animating;
    }
    @property (nonatomic) CGFloat animationDuration;
    
    //判断是否是动画状态
    - (BOOL)isAnimating;
    //开始动画
    - (void)startAnimating;
    //停止动画
    - (void)stopAnimating;
    - (void)spin;
    
    
    @end

    ZYViewController.m:

    //按钮监听事件
    - (void)animate:(ZYReloadActivityButton *)button
    {
        //如果是navigationBarItem按钮
        if(button == navigationBarItem)
        {
            [button spin];
        }
        else
        {//非navigationBarItem按钮
            if ([button isAnimating])
            {
                [button stopAnimating];
            }
            else
            {
                [button startAnimating];
            }
        }
    }

    运行结果:


    当点击右上角按钮,会旋转一圈之后停止,当点击屏幕中心的按钮会一直旋转,直到又一次点击后停止。

    3 结语

    以上是所有内容,希望对大家有所帮助。

    Demo下载地址:http://download.csdn.net/detail/u010013695/5460101

  • 相关阅读:
    最小生成树+BFS J
    Noip 2016
    舒适的路线 (code[vs] 1001)
    拦截导弹 (加了神奇的位运算)
    逃出克隆岛 (codevs 2059)
    回家(洛谷 P1592)
    热浪
    城堡
    笔记 (一道正解思路巧妙的题)
    脱水缩合
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3102425.html
Copyright © 2020-2023  润新知