中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

EGOTableViewPullRefresh動態刷新按鈕

發布時間:2020-06-14 18:37:11 來源:網絡 閱讀:798 作者:新風作浪 欄目:開發技術

EGOTableViewPullRefresh 是fork EGOTableViewPullRefresh開源類庫進行的改進,添加了上提加載更多效果。同時也可以通過一個按鈕的觸發刷新事件,但是刷新的時候不能跳到top,為了動態展示,再刷新的時候按鈕旋轉,然后跳轉回到頂部!如下如圖


EGOTableViewPullRefresh動態刷新按鈕EGOTableViewPullRefresh動態刷新按鈕EGOTableViewPullRefresh動態刷新按鈕


關于EGOTableViewPullRefresh可以參照http://blog.csdn.net/duxinfeng2010/article/details/9007311,翻譯過的用法,在這個Demo基礎上進行修改,點擊Demo下載

1、給工程添加一個導航欄,在application: didFinishLaunchingWithOptions:方法中



- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // Override point for customization after application launch.
//    [[UINavigationBar appearance] setBackgroundImage:[UIImage p_w_picpathNamed:@"navbar.png"] forBarMetrics:UIBarMetricsDefault];
               
    UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:self.viewController];
    self.window.rootViewController = nav;
    [self.window makeKeyAndVisible];
    return YES;
}



2、在ViewDidLoad方法中,修改背景圖片,添加刷新按鈕


- (void)viewDidLoad
{
    [super viewDidLoad];
    self.navigationController.navigationBar.tintColor = [UIColor colorWithPatternImage:[UIImage p_w_picpathNamed:@"navbar.png"]];
         
    self.pullTableView.pullArrowImage = [UIImage p_w_picpathNamed:@"blackArrow"];
//    self.pullTableView.pullBackgroundColor = [UIColor yellowColor];
    self.pullTableView.pullTextColor = [UIColor blackColor];
         
    CGRect rect = CGRectMake(0, 0, 44, 44);
    UIButton *refreshBtn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    refreshBtn.frame = rect;
    [refreshBtn setBackgroundImage:[UIImage p_w_picpathNamed:@"button_refresh"] forState:UIControlStateNormal];
    [refreshBtn addTarget:self action:@selector(refresh:) forControlEvents:UIControlEventTouchUpInside];
    UIBarButtonItem *refreshItem = [[UIBarButtonItem alloc] initWithCustomView:refreshBtn];
    self.navigationItem.leftBarButtonItem = refreshItem;
         
}



3、添加刷新按鈕事件,和按鈕旋轉方法



//按鈕旋轉
- (void)startAnimation:(UIButton *)button{
    CABasicAnimation *rotate =
    [CABasicAnimation animationWithKeyPath:@"transform.rotation"];   
    [rotate setByValue:[NSNumber numberWithFloat:M_PI*4]];
    rotate.duration = 3.0;
    rotate.timingFunction =
    [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
    [button.layer addAnimation:rotate
                        forKey:@"myRotationAnimation"];
           
}



-(void)refresh:(UIButton *)button
{
    [self startAnimation:button];
//    判斷一下table是否處于刷新狀態,如果沒有則執行本次刷新
    if (!self.pullTableView.pullTableIsRefreshing) {
        self.pullTableView.pullTableIsRefreshing = YES;
//        設置回到top時候table的位置
        [self.pullTableView setContentOffset:CGPointMake(0, -60) animated:YES];
        [self performSelector:@selector(refreshTable) withObject:nil afterDelay:3.0];
    }
                 
}



×××地址:https://github.com/XFZLDXF/RefreshButtonDemo




向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

苗栗市| 新民市| 博湖县| 当阳市| 舟曲县| 介休市| 调兵山市| 邵武市| 辽宁省| 文安县| 和田县| 资源县| 河南省| 阿拉尔市| 城市| 舟山市| 赣榆县| 搜索| 无锡市| 前郭尔| 泗阳县| 新宾| 泰州市| 三亚市| 水富县| 阿勒泰市| 固镇县| 高安市| 札达县| 东乡族自治县| 临江市| 乃东县| 镇雄县| 大姚县| 板桥市| 新竹市| 德惠市| 商南县| 大理市| 高密市| 广丰县|