扫码关注官方订阅号
我已经在listview中通过SimpleAdapter绑定了不同数据 我想知道像那种新闻客户端一样在listview中点击某一个新闻的标题后进入查看新闻详情 在这个对应的一条新闻详情中继续查看下一条新闻的详情时,可以通过左右滑动实现不同新闻的切换,这种效果是怎样实现的啊?
小伙看你根骨奇佳,潜力无限,来学PHP伐。
新闻详情页其实是个ViewPager,明白了么?
提供点伪代码给你看看
class News { int id; // 新闻标识 String summary; // 概述 String imageUrl; // 图片资源链接 } class NewsDetail { int id; // 新闻标识 String summary; // 概述 String detail; // 详细 }
我们的ListView对应的Adapter里面引用的数据源就是 ArrayList<News>列表。 可以把这个列表缓存在Application里做一个全局变量。
然后你点击进入一个新闻详情
OnItemClickListener(new ...() { void onItemClick() { Intent i = new Intent(context, NewsDetailActivity.class); i.putExtra("id", id); startActivity(i); } });
NewsDetailActivity是简单的新闻详情页面 里面主要的控件是ViewPager,他的数据源是根据之前的NewsList而来的。 ArrayList<NewsDetail> detailList = new ArrayList<NewsDetail>();
onCreate 方法里面最后通过一个异步方式去获取新闻的详情,然后显示出来。
class NewsDetailTask extends AsyncTask<String, Void, Void> { onBackground() { // 缓存里面获取新闻详情或者 // http get/post("...");获取新闻详情 // 显示出来 } }
设置OnPageChangeListener,在onPageChanged方法里面去调整当前页面展示的新闻详情
class MyOnPageChangeListener implements OnPageChangeListener { void onPageSelected(int position) { int id = ((XXApplication) getApplication()).getNewsList().get(position).getId(); new NewsDetailTask("" + id); } }
就可以了。
http://blog.csdn.net/billpig/article/...这篇文章或许对你有用。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
新闻详情页其实是个ViewPager,明白了么?
提供点伪代码给你看看
我们的ListView对应的Adapter里面引用的数据源就是
ArrayList<News>列表。
可以把这个列表缓存在Application里做一个全局变量。
然后你点击进入一个新闻详情
NewsDetailActivity是简单的新闻详情页面
里面主要的控件是ViewPager,他的数据源是根据之前的NewsList而来的。
ArrayList<NewsDetail> detailList = new ArrayList<NewsDetail>();
onCreate 方法里面最后通过一个异步方式去获取新闻的详情,然后显示出来。
设置OnPageChangeListener,在onPageChanged方法里面去调整当前页面展示的新闻详情
就可以了。
http://blog.csdn.net/billpig/article/...这篇文章或许对你有用。