xml解析新浪新闻_客户端_下拉刷新2
来源:互联网 发布:厦门美工培训班 编辑:程序博客网 时间:2024/06/10 14:37
添加点击显示更多内容的功能,简单改变cell的高度即可
添加上拉加载更多功能
定义两个变量
int selectedRow=-1;int selected=0;
在
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
里添加
if (selected==1) {if (indexPath.row==selectedRow) {cell.des.hidden=NO;}elsecell.des.hidden=YES;}elsecell.des.hidden=YES;
然后添加点击效果
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{selectedRow=indexPath.row;selected=!selected;[self.tableView reloadData];NSLog(@"%d",selectedRow);}
然后修改cell高度
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{if (selected==1) {if (indexPath.row==selectedRow) {return 250;}elsereturn 60;}elsereturn 60;}
上拉加载更多是修改原上拉刷新的代码
加上类的文件后在两个方法里改即可
在ViewController.h文件里添加如下几个方法
// create/remove footer/header view, reset the position of the footer/header views-(void)setFooterView;-(void)removeFooterView;-(void)createHeaderView;-(void)removeHeaderView;// overide methods-(void)beginToReloadData:(EGORefreshPos)aRefreshPos;-(void)finishReloadingData;// force to refresh-(void)showRefreshHeader:(BOOL)animated;
在ViewController.m里添加代码
#pragma mark-#pragma mark overide methods-(void)beginToReloadData:(EGORefreshPos)aRefreshPos{ if (aRefreshPos == EGORefreshHeader) { // pull down to refresh data [self performSelector:@selector(testRealRefreshDataSource) withObject:nil afterDelay:2.0]; }else if(aRefreshPos == EGORefreshFooter){ // pull up to load more data [self performSelector:@selector(testRealLoadMoreData) withObject:nil afterDelay:2.0]; }}
刷新的方法
-(void)testRealRefreshDataSource{ NSLog(@"reflash"); xmlParser = [[NSXMLParser alloc]initWithContentsOfURL:[NSURL URLWithString:@"http://rss.sina.com.cn/news/marquee/ddt.xml"]]; self.tempString = nil; self.newsPubdate = nil; self.newsTitle = nil; self.description = nil; [xmlParser setDelegate:self]; [xmlParser parse]; // after refreshing data, call finishReloadingData to reset the header/footer view _loadMoreCount=0; [self setFooterView]; [self.tableView reloadData]; [self finishReloadingData];}
加载更多的方法
-(void)testRealLoadMoreData{ if (_loadMoreCount==1) { [self finishReloadingData]; [self removeFooterView]; NSLog(@"ed"); }else{ self.newsTitle = nil; xmlParser = [[NSXMLParser alloc]initWithContentsOfURL:[NSURL URLWithString:@"http://rss.sina.com.cn/news/marquee/ddt.xml"]]; self.tempString = nil; [xmlParser setDelegate:self]; [xmlParser parse]; _loadMoreCount=1; [self.tableView reloadData]; [self finishReloadingData]; NSLog(@"loadmore"); }}
定义一个整数NSInteger _loadMoreCount;可以限制加载更多次数。
参考:http://blog.csdn.net/linzhu0831/article/details/7547337
参考demo:http://download.csdn.net/download/linzhu0831/4743338
本贴demo:http://download.csdn.net/detail/gwh111/5001479
- xml解析新浪新闻_客户端_下拉刷新2
- xml解析新浪新闻_客户端_下拉刷新
- 安卓新闻客户端(五) ListView下拉刷新 XlistView解析
- Android开发_下拉刷新
- 168_下拉刷新PullToRefresh
- 使用Pull解析XML获取新浪新闻
- 79_解析xml
- Android_下拉刷新_通过第三方
- 网易新闻客户端下拉刷新动画的实现
- 指令汇B新闻客户端开发(三) 下拉刷新
- 异步解析xml读新浪新闻作业总结
- 使用Jsoup解析XML抓取新浪新闻文章
- 解析XML上拉加载下拉刷新
- 下拉刷新+上拉加载+xml解析
- 41_刷新滚动bug解析
- 搭建主流框架_下拉/上拉刷新数据(OC)
- Android项目_新闻
- [cocoa]_[初级]_[解析XML文件获取数据]
- gethostbyname
- [我要考试]操作系统习题_CH4_线程对称多处理和微内核_概念题部分
- source insight查看当前文件的完整路径
- Java邮件类
- JQuery Mobile入门——多项选择菜单
- xml解析新浪新闻_客户端_下拉刷新2
- 一个超好用的磁盘分区/管理 软件--diskgenius
- 字符数组两种定义方式的区别
- Driver for keys on GPIO using input-subsystem way
- 让Thunderbird跨越Ubuntu和Windows
- 图像拼接中的算法
- JSP页面的五种跳转方法
- Java获取IP地址及机器名称
- getResources()方法