首页 > 代码库 > 一步一实现视频播放器客户端(三)显示热门电影列表
一步一实现视频播放器客户端(三)显示热门电影列表
(三)
今天实现热门电影这块功能,主要是从服务器获取数据,然后显示在界面上。这块虽然说是从服务器获取电影信息数据,但是,没有用到http相关的知识,我们直接使用sdk包(56网提供的api),就能获取服务器返回的json格式的数据了。以后,我还会写一篇笑话客户端的完整例子,会讲http这块,现在就不多说了。
效果图:
第2将,我们把主界面做好了,但是没有数据,今天,我们获取数据,绑定界面上。 在说下界面,顶部一个标题,显示app名字,一次下面是一排的按钮,这里按钮放在滚动控件里面,可以左右滑动,点击选择不同的按钮,来切换下面的类容,点击按钮时候,按钮会自定像左边或者右边滚动。中间,就是一个listview了,应该是很多个Listview,每个内容项对应一个listview,通过影藏显示,来控制具体显示哪个listview,listview只实现了,上拉加载功能,代码,很久以前做的,现在不想改了,需要下拉刷新,大家可以使用开源的代码来做,很简单方便的。
这个小功能的具体的代码如下,我去,代码有点多:
在使用skd时候,需要在前面进行初始化操作:
今天就是这样了,这里简单说了下代码,具体的详细代码,大家请看这里:
http://pan.baidu.com/s/1qWJkQfE
今天实现热门电影这块功能,主要是从服务器获取数据,然后显示在界面上。这块虽然说是从服务器获取电影信息数据,但是,没有用到http相关的知识,我们直接使用sdk包(56网提供的api),就能获取服务器返回的json格式的数据了。以后,我还会写一篇笑话客户端的完整例子,会讲http这块,现在就不多说了。
效果图:
第2将,我们把主界面做好了,但是没有数据,今天,我们获取数据,绑定界面上。 在说下界面,顶部一个标题,显示app名字,一次下面是一排的按钮,这里按钮放在滚动控件里面,可以左右滑动,点击选择不同的按钮,来切换下面的类容,点击按钮时候,按钮会自定像左边或者右边滚动。中间,就是一个listview了,应该是很多个Listview,每个内容项对应一个listview,通过影藏显示,来控制具体显示哪个listview,listview只实现了,上拉加载功能,代码,很久以前做的,现在不想改了,需要下拉刷新,大家可以使用开源的代码来做,很简单方便的。
这个小功能的具体的代码如下,我去,代码有点多:
private ListView listView; // 展示数据的listview
private HotAdpter adpter; // 绑定数据的适配器
private ArrayList<MovieBean> beans; // 放置视频对象的集合 ,MovieBean是一个实体对象,在bean包建的
private Map<Integer, HotAdpter> adpters; // 保存适配器的map集合,这个页面有多个频道。需要多个listview和adpter
private static int post; // 记录当前点击的频道id
private RadioGroup radioGroup; // 放置上面的各个频道按钮
private LinearLayout layout; // 用来动态添加N个listview用的
private String type; // 类别
private boolean isResh; // 是否获取数据结束,防止listview滚动到最下面,重复获取数据
private View pView; // 转圈圈view
private int[] location; // 保存频道button的位置
private String page = "1"; //分页用的
private HorizontalScrollView scrollView; //放置顶部button的
private int flag; //标示,记录当前,点击的是哪个button
private int postion;
private int width; //屏幕的宽度,用来计算顶部按钮暂用的宽度,以便向左或者右滑动相应的距离
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_hot);
initData();
initView();
}
@Override
public void initView() {
scrollView = (HorizontalScrollView) findViewById(R.id.hscroll);
location = new int[2];
layout = (LinearLayout) findViewById(R.id.list_lin);
radioGroup = (RadioGroup) findViewById(R.id.bar_rg);
radioGroup.setOnCheckedChangeListener(this);
pView = findViewById(R.id.pb);
for (int i = 0; i < 13; i++) { //应为了13个条目,创建13个listview
listView = (ListView) getLayoutInflater().inflate(
R.layout.listview_item, null); //用xml获取一个listview对象
listView.setId(i + 1); //动态设置id
layout.addView(listView); //把listview加在LinearLayout上面
type = MyData.rd; //MyData里面放了一些常量,MyData.rd,表示热门这个栏目,具体请下源码看
if (i == 0) {
listView.setVisibility(View.VISIBLE); //刚进这个界面的时候,显示第一个listview,加载显示热门电影
post = 0;
type = MyData.rd;
new Threads().start(); //开启一个线程获取热门电影
} else {
listView.setVisibility(View.GONE); //影藏其他所有listview
}
setListener(listView); //绑定事件监听
}
}
private void setListener(ListView listView) {
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
在使用skd时候,需要在前面进行初始化操作:
<font color="#ff0000">这句话,在MyApplication里面调用的,</font><span style="color: rgb(255, 0, 0); line-height: 1.5;">MyApplication类继承</span><font color="#ff0000">Application 请在配置文件里面进行声明,</font><span style="line-height: 1.5; color: rgb(255, 0, 0);">在应用启动时候,会调用</span><span style="line-height: 1.5; color: rgb(255, 0, 0);">MyApplication里面的</span><span style="line-height: 1.5; color: rgb(255, 0, 0);">onCreate()方法,我们在里面调用</span>
今天就是这样了,这里简单说了下代码,具体的详细代码,大家请看这里:
http://pan.baidu.com/s/1qWJkQfE
一步一实现视频播放器客户端(三)显示热门电影列表
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。