模拟新浪微博随便看看栏目

使用ListView来模仿微博随便看看栏

【分析】

要完成这个效果,我们需要:

1.ListView及ListView_Item

2.实体类的编写

3.自定义适配器的书写

4.ListView的绑定数据源与控件

【编码】

package cn.edu.bzu.adapter;
 
import java.util.List;
 
import cn.edu.bzu.entity.Information;
import cn.edu.bzu.weibo.R;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
 
/**
 * 自定义Adapter实现listView的显示
 * @author monster
 * @date : 2015-04-28
 */
public class MyAdapter extends BaseAdapter {
    private List<Information> list;
    private Context mContext;
    private LayoutInflater mInflater;
    //定义构造方法
    public MyAdapter(List<Information> list, Context mContext) {
        super();
        this.list = list;
        this.mContext = mContext;
    }
 
    @Override
    public int getCount() {
        return list.size();
    }
 
    @Override
    public Object getItem(int position) {
        return list.get(position);
    }
 
    @Override
    public long getItemId(int position) {
        return position;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder=null;
        if(convertView==null){
            convertView=mInflater.from(mContext).inflate(R.layout.listview_item,null);  //布局转换成视图
            holder=new ViewHolder();
            //实例化控件
            holder.Image=(ImageView)convertView.findViewById(R.id.Iv);
            holder.Name=(TextView)convertView.findViewById(R.id.Name);
            holder.Time=(TextView)convertView.findViewById(R.id.Time);
            holder.Contents=(TextView)convertView.findViewById(R.id.Contents);
            convertView.setTag(holder); //设置setTag使得程序得以优化
        }else{
            holder=(ViewHolder) convertView.getTag();
        }
        //给控件赋值
        holder.Image.setBackgroundResource(list.get(position).getImgId());
        holder.Name.setText(list.get(position).getName());
        holder.Time.setText(list.get(position).getDate());
        holder.Contents.setText(list.get(position).getContent());
        return convertView;
    }
     
    class ViewHolder{
        ImageView Image;
        TextView  Name;
        TextView  Time;
        TextView  Contents;
    }
}

MainActivity:

package cn.edu.bzu.weibo;

 

import java.util.ArrayList;

import java.util.List;

 

import cn.edu.bzu.adapter.MyAdapter;

import cn.edu.bzu.entity.Information;

import android.os.Bundle;

import android.widget.ListView;

import android.app.Activity;

 

public class MainActivity extends Activity {

    private ListView listView;

    private MyAdapter adapter;

    private List<Information> list;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        setData();//数据源

         initView();

    }

    private void initView() {

        // 初始化控件

        listView=(ListView) findViewById(R.id.Lv);

        listView.setAdapter(adapter);  //绑定适配器

    }

    private void setData() {

        // 设置数据源

         list=new ArrayList<Information>();

        list.add(new Information(R.drawable.img1,"孙浩","2015-05-02","好好学习"));

        list.add(new Information(R.drawable.img2, "华华", "2015-05-02", "天天向上"));

        list.add(new Information(R.drawable.img3,"天天","2015-05-02","五一来了呀"));

        list.add(new Information(R.drawable.img4,"小云","2015-05-02","五一放假啦"));

        list.add(new Information(R.drawable.img5,"小雨","2015-05-02","开学开学了"));

        list.add(new Information(R.drawable.img6, "小张", "2015-05-02", "啦啦啦"));

        list.add(new Information(R.drawable.img7, "小新", "2015-05-02", "今天和闺蜜去超市,买了好多好多好吃的##"));

        adapter=new MyAdapter(list, MainActivity.this);

    }          

}

----->>这次实验让我掌握了ListView 控件的使用,理解了 Adapter 的作用并掌握自定义 FruitAdapter 的使用方式

时间: 2024-10-08 10:03:41

模拟新浪微博随便看看栏目的相关文章

Android学习之模仿新浪微博随便看看栏目

小编目前仍在Android学习中,本次模仿新浪微博随便看看栏目运行效果如下: 过程分析: 完成该项目大概可以分为三部分:  布局设计,自定义适配器 和 为适配器添加数据; 1.布局设计中,小编在mainactivity.xml文件中定义了一个ListView控件,并单独设定了一个数据项的布局list_cell, 数据项代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:a

模拟新浪微博随便看看

1. 训练目标1) 掌握ListView 控件的使用2) 理解Adapter 的作用并掌握自定义FruitAdapter 的使用方式 2.开发步骤 1)自定义适配器MyAdapter package cn.edu.bzu.adapter;   import java.util.List;   import cn.edu.bzu.entity.Information; import cn.edu.bzu.weibo_looking.R; import android.content.Context

PHP 基于laravel框架获取微博数据之一 模拟新浪微博登录

参考资料:http://www.csuldw.com/2016/11/10/2016-11-10-simulate-sina-login/http://blog.csdn.net/fly_leopard/article/details/51148904http://www.tuicool.com/articles/uIJzYff http://blog.csdn.net/u010029983/article/details/46364113等 模拟新浪微博登录是抓取新浪数据的基础,网上的参考资料

Java模拟新浪微博登陆抓取数据

前言:  兄弟们来了来了,最近有人在问如何模拟新浪微博登陆抓取数据,我听后默默地抽了一口老烟,暗暗的对自己说,老汉是时候该你出场了,所以今天有时间就整理整理,浅谈一二. 首先:  要想登陆新浪微博需要预登陆,即是将账号base64加密,密码rsa加密以及请求http://login.sina.com.cn/sso/prelogin.php链接获取一些登陆需要参数,返回的接送字符串如: {"retcode":0,"servertime":1487292003,&quo

Node.js-Koa2框架生态实战-从零模拟新浪微博

第1章 课程介绍介绍课程内容,演示微博的最终成果 第2章 技术选型和知识点介绍(上)从框架.数据库.ORM 工具.登录注册.单元测试等面,做技术选型分析.以及对选型所用到的知识点做介绍. 第3章 技术选型和知识点介绍(下)从框架.数据库.ORM 工具.登录注册.单元测试等面,做技术选型分析.以及对选型所用到的知识点做介绍. 第4章 技术方案设计讲解如何设计 server 端架构,设计 API 和路由,设计数据表. 第5章 用户管理开发用户登录和注册功能. 第6章 用户设置开发用户设置功能. 第7

Node.js-Koa2框架生态实战-从零模拟新浪微博 完整教程

本文配套学习资料获取地址:点击这里 课程为纯实战项目,从零模拟开发一个基本功能完备的微博系统(包括注册.登录.关注和取关,微博浏览.创建和回复,及 @ 关注人等各个功能),带你完成整个Koa2框架生态的综合技术实战,包括各类中间件,MySQL数据库设计,微博项目架构等诸多干货内容,最后带你回顾整个开发过程,从技术层面总结 Node.js 的最佳实践经验 模拟新浪微博:Koa2框架生态实战,Node.js中间件串讲 项目展示截图: 项目架构图: 非常适合已掌握Node.js基础,但项目开发经验不足

全程模拟新浪微博登录(2015)

很久之前就了解过模拟登录的过程,最近对python用的比较多,想来练练手,就想实现一下新浪微博登录,首先随便一搜,网上有大量的前辈们都做过了,我也仔细看了一下,并且参考之后发现无法登录,而且还有很多细节没有说得太清楚.同时网上最新的也是很久之前的,对于最新的版本也有一些改动,因此将我接近两天时间的研究全过程记录一下. 已有实现的简要过程 网上已有实现可以见http://www.douban.com/note/201767245/以及http://www.jb51.net/article/4477

定向爬虫 - Python模拟新浪微博登录

写在前面 当我们试图从新浪微博抓取数据时,我们会发现网页上提示未登录,无法查看其他用户的信息. 模拟登录是定向爬虫制作中一个必须克服的问题,只有这样才能爬取到更多的内容. 实现微博登录的方法有很多,一般我们在模拟登录时首选WAP版. 因为PC版网页源码中包括很多的js代码,提交的内容也更多,不适合机器模拟登录. 我们实现微博登录的大体思路是这样的: 用抓包工具把正常登录时要提交的字段都记录下来. 模拟提交这些字段. 判断是否登录成功. 原理很简单,让我们一步一步来实现吧. 一.抓包利器Fiddl

模拟新浪微博登录-原理分析到实现

原文地址:http://www.csuldw.com/2016/11/10/2016-11-10-simulate-sina-login/ 上一篇文章 小试牛刀:使用Python模拟登录知乎 介绍了如何模拟知乎登录,虽然用到了验证码信息,但请求的参数都是原封不动的传递,刚开始接触的时候,觉得难度适中,回头再看的时候,反而感觉挺容易的.在这篇文章,将继续介绍模拟登录.与之前不一样的是,这次选择的对象是新浪微博,难度稍微提升了点,好在以往的许多码友们都留有许多经验贴,经过几番斟酌,微博的模拟登录算是