UITableView

原创 2015年11月19日 16:46:46

用UITableView做一个有刷新和清除的简单视图

—这是我的第一个博客–

代码如下:

#import "AppDelegate.h"
#import "MainViewController.h"
#import "PhotoAlbumViewController.h"
#import "MusicViewController.h"
#import "SetViewController.h"
@interface AppDelegate ()

@end

@implementation AppDelegate


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    //窗口
    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
    self.window.backgroundColor = [UIColor whiteColor];
    [self.window makeKeyAndVisible];


    //标签控制器
    MainViewController *mainVC = [[MainViewController alloc] init];
    UINavigationController *mainNC = [[UINavigationController alloc] initWithRootViewController:mainVC];
    PhotoAlbumViewController *photoAlbumVC = [[PhotoAlbumViewController alloc] init];
    UINavigationController *photoAlbumNC = [[UINavigationController alloc] initWithRootViewController:photoAlbumVC];
    MusicViewController *musicVC = [[MusicViewController alloc] init];
    UINavigationController *musicNC = [[UINavigationController alloc] initWithRootViewController:musicVC];
    SetViewController *setVC = [[SetViewController alloc] init];
    UINavigationController *setNC = [[UINavigationController alloc] initWithRootViewController:setVC];
    UITabBarController *tabBarNC = [[UITabBarController alloc] init];
    tabBarNC.viewControllers = @[mainNC,photoAlbumNC,musicNC,setNC];
    tabBarNC.tabBar.barTintColor = [UIColor whiteColor];
    tabBarNC.tabBar.tintColor = [UIColor blackColor];
    self.window.rootViewController = tabBarNC;




    return YES;
}
#import "MainViewController.h"

@interface MainViewController () <UITableViewDataSource>
@property (nonatomic, strong) UITableView *tableView;
@property (nonatomic, strong) NSString *string;
@property (nonatomic, strong) NSMutableArray *stringArray;
@end

@implementation MainViewController
- (instancetype)init
{
    self = [super init];
    if (self) {
        self.title = @"主页";
        UITabBarItem *item = [[UITabBarItem alloc] initWithTitle:self.title image:[UIImage imageNamed:@"tab1"] tag:200];
        self.tabBarItem = item;
    }
    return self;
}

- (void)viewDidLoad {
    [super viewDidLoad];
    //刷新按钮
    UIBarButtonItem *refreshItem = [[UIBarButtonItem alloc] initWithTitle:@"刷新" style:UIBarButtonItemStylePlain target:self action:@selector(refreshItemTaped:)];
    self.navigationItem.leftBarButtonItem = refreshItem;
    //清除按钮
    UIBarButtonItem *clearItem = [[UIBarButtonItem alloc] initWithTitle:@"清除" style:UIBarButtonItemStylePlain target:self action:@selector(clearItemTaped:)];
    self.navigationItem.rightBarButtonItem = clearItem;


    //表格
    _tableView = [[UITableView alloc] initWithFrame:self.view.bounds style:UITableViewStylePlain];

    //数据源协议
    _tableView.dataSource = self;


    [self.view addSubview:_tableView];


    //初始化
    _stringArray = [NSMutableArray array];


}

//指定分区有多少行    required
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    return _stringArray.count;
}


//配置每一行怎样显示        required
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"cell"];

    cell.detailTextLabel.text = _stringArray[indexPath.row];


    NSString *indexString = [NSString stringWithFormat:@"index%ld",indexPath.row];
    cell.textLabel.text = indexString;


    if (indexPath.row % 2 == 0) {
        cell.backgroundColor = [UIColor lightGrayColor];
    }

    return cell;
}





- (void)refreshItemTaped:(UIBarButtonItem *)sender{
    //模拟网络请求
    [self performSelector:@selector(loadDataSource) withObject:self afterDelay:1];
}


- (void)clearItemTaped:(UIBarButtonItem *)sender{
    _stringArray = [[NSMutableArray alloc] init];
    [_tableView reloadData];
}

- (void)loadDataSource{
    //获取当前时间
    NSDate *date = [[NSDate alloc] init];
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";
    _string = [formatter stringFromDate:date];
    [_stringArray addObject:_string];
    [_tableView reloadData];  
}
@end

运行之后如图:


快捷键

  • 加粗 Ctrl + B
  • 斜体 Ctrl + I
  • 引用 Ctrl + Q
  • 插入链接 Ctrl + L
  • 插入代码 Ctrl + K
  • 插入图片 Ctrl + G
  • 提升标题 Ctrl + H
  • 有序列表 Ctrl + O
  • 无序列表 Ctrl + U
  • 横线 Ctrl + R
  • 撤销 Ctrl + Z
  • 重做 Ctrl + Y
版权声明:本文为博主原创文章,未经博主允许不得转载。

IOS控件学习之UITableView代码实例详解

.h文件 // // ViewController.h // UITableView // // Created by on 13-9-24. // Copyright (c) 2013年 ...
  • xuqiang918
  • xuqiang918
  • 2013年09月25日 09:43
  • 2418

如何不让UITableView滚动

self._UITableView.scrollEnabled = NO;
  • dadalan
  • dadalan
  • 2009年05月19日 17:01
  • 22573

iOS 最全的UITableView的各种使用方法

UITableView: 1、重用代理 @interface ViewController : UIViewController 2、定义 _tableView = [[UITableVi...
  • QueenlySun
  • QueenlySun
  • 2016年11月02日 17:08
  • 2959

ios uitableview里点击界面退出键盘的实现

①给UITableView增加一个tap的手势: //增加tap手势,点击使退出键盘 UITapGestureRecognizer * tapGesture = [[UITapGes...
  • misakahina
  • misakahina
  • 2015年04月25日 01:38
  • 898

UITableView的分区头 悬停问题

我们开发经常用到UITableView,而它的分区头也会用到,分区头在屏幕顶部和底部会有悬停功能。 那就要说到UITableView的两种格式,UITableViewStyleGrouped和UITa...
  • wujakf
  • wujakf
  • 2017年04月08日 13:30
  • 883

iOS控件——UITableView详解

iOS开发中经常会用到UITableView,我们平时使用的软件中到处都可以看到它,比如微信、QQ、微博等软件基本上随处都是UITableView。最主要到还有iOS设置。 一  基本介绍 UITab...
  • VNanyesheshou
  • VNanyesheshou
  • 2015年12月16日 13:38
  • 4843

UItableView 插入删除数据 动画

方法1: [_tableView reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnim...
  • naibbian
  • naibbian
  • 2014年12月11日 16:54
  • 842

UITableView之分组案例

首先我们先看下我们要做到那种效果源码会在底部给出链接其次我们分下下数据 我们分析下这张图:首先数据的根是个数组里面是每个字典并包含header,footer,和cars属性;其次cars也是个数组里...
  • u014360817
  • u014360817
  • 2016年07月26日 08:05
  • 362

swift里UITableView简单的用法

swift里UITableView简单的用法 删除、移动等等
  • syg90178aw
  • syg90178aw
  • 2015年07月23日 15:32
  • 5373

UITableViewCell分类

#import @protocol EJUITableViewCellDelegate -(void)didClickedCell:(id)object cellAtIndexPath:(NS...
  • u012701023
  • u012701023
  • 2016年06月30日 18:23
  • 240
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UITableView
举报原因:
原因补充:

(最多只允许输入30个字)