Android——AdT模拟新浪微博随便看看看看

Android——AdT模拟新浪微博随便看看看看一 项目开发 1 项目开发运行效果图 2 开发概要本项目是模拟新浪微博随便看看 初步学习 ListView 控件 重写了 ListView 控件和 BaseAdapter 适配器中的方法 ListView 中的数据中图片 昵称 文本都是在 values 目录中定义的 arrays xml 资源 里面的日期和人气字段都是通过获取和随机出来的 xml 文件分为两个 一个 activity main xm

一、项目开发

1、项目开发运行效果图

Android——AdT模拟新浪微博随便看看看看





2、开发概要

本项目是模拟新浪微博随便看看,初步学习ListView控件,重写了ListView控件和BaseAdapter适配器中的方法,ListView中的数据中图片、昵称、文本都是在values目录中定义的arrays.xml资源,里面的日期和人气字段都是通过获取和随机出来的。xml文件分为两个,一个activity_main.xml和list_layout.xml.字段文本信息主要在values.xml文件中。

二、程序讲解

1、项目文件如下:

Android——AdT模拟新浪微博随便看看看看 Android——AdT模拟新浪微博随便看看看看



注意:本项目所用的图片主要放在drawable-hdpi文件中



2、步骤

1)重写ListView控件MyListView,新建src目录下下添加bzu.eu.view/MyListView.java,代码部分如下:
package bzu.edu.view; import android.content.Context; import android.util.AttributeSet; import android.widget.ListView; public class MyListView extends ListView { //重写ListView控件为MyListView public MyListView(Context context, AttributeSet attrs) { super(context, attrs); // TODO Auto-generated constructor stub } } 

2)、修改res/layout/activity_main.xml文件,代码部分如下:
 
      
      
       
        
       
       
       
       
     


3)、在res/layout目录下添加list_layout.xml文件,代码部分如下:
                                                                                                                                                                                   




4)、在vlues文件下添加arrays.xml,

代码如下:
                                           @drawable/p1                         @drawable/p2                         @drawable/p3                         @drawable/p4                         @drawable/p5                         @drawable/p6                         @drawable/p7                         @drawable/p8                         @drawable/p9                         @drawable/p10                                              @string/p1                         @string/p2                         @string/p3                         @string/p4                         @string/p5                         @string/p6                         @string/p7                         @string/p8                         @string/p9                         @string/p10                                              潇湘夜雨                         小小                         青春无悔                         小丸子                         丫丫                         Mil                         初见                         片刻暗恋                         陪你到老                         乐此不疲                     

5)、在src目录下添加bzu.edu.adapter/ArticleAdapter,代码如下:

package bzu.edu.adapter; import java.util.List; import bzu.edu.hou.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.LinearLayout; import android.widget.TextView; //自定义ArticleAdapter类 public class ArticleAdapter extends BaseAdapter { private List             list_mes=null; private Context context; //构造方法 public ArticleAdapter(Context context,List               list_mes) { // TODO Auto-generated constructor stub this.list_mes=list_mes; this.context=context; } @Override public int getCount() { // TODO Auto-generated method stub return list_mes.size(); } @Override public Object getItem(int position) { // TODO Auto-generated method stub return list_mes.get(position); } @Override public long getItemId(int position) { // TODO Auto-generated method stub return position; } //设置item页面的布局效果 @Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub ListItem listitem; if(convertView==null) { convertView=(LinearLayout)LayoutInflater.from(context).inflate(R.layout.list_layout, null); listitem=new ListItem(); //获取到对应的控件对象 listitem.img=(ImageView)convertView.findViewById(R.id.head_img); listitem.name=(TextView)convertView.findViewById(R.id.name); listitem.time=(TextView)convertView.findViewById(R.id.time); listitem.rq=(TextView)convertView.findViewById(R.id.rq); listitem.article=(TextView)convertView.findViewById(R.id.article); convertView.setTag(listitem); }else { listitem=(ListItem)convertView.getTag(); } listitem.img.setImageDrawable(list_mes.get(position).getImg()); listitem.name.setText(list_mes.get(position).getName()); listitem.time.setText(list_mes.get(position).getTime()); listitem.rq.setText(list_mes.get(position).getRq()); listitem.article.setText(list_mes.get(position).getArticel()); return convertView; } //定义内部类作为占位符组合 public class ListItem{ ImageView img; TextView name; TextView time; TextView rq; TextView article; } }             


6)、在src目录下添加bzu.edu.adapter/Messages ,代码如下:

package bzu.edu.adapter; import android.graphics.drawable.Drawable; public class Messages { private Drawable img;//图片 private String name;//姓名 private String time;//时间 private String rq;//日期 private String articel;//内容 //Messages的构造方法 public Drawable getImg() { return img; } public void setImg(Drawable img) { this.img = img; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getTime() { return time; } public void setTime(String time) { this.time = time; } public String getRq() { return rq; } public void setRq(String rq) { this.rq = rq; } public String getArticel() { return articel; } public void setArticel(String articel) { this.articel = articel; } } 

7)、修改src/bzu.edu/MainActivity.java代码,如下:

package bzu.edu; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Random; import bzu.edu.adapter.ArticleAdapter; import bzu.edu.adapter.Messages; import bzu.edu.hou.R; import bzu.edu.view.MyListView; import android.os.Bundle; import android.app.Activity; import android.content.res.TypedArray; import android.view.Menu; import android.view.Window; import android.widget.BaseAdapter; public class MainActivity extends Activity { //定义重写的MyListView对象 //定义字符序列组用来存储的MyListView的数据源 private MyListView mylistview=null; private List             list_msg=null; private BaseAdapter adapter=null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //取消自带的标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); //通过setContentView方法设置当前页面的布局文件为activity_main; setContentView(R.layout.activity_main); findView(); setGv(); } private void setGv(){ if(list_msg==null){ getData(); } adapter=new ArticleAdapter(this,list_msg); //设置ListView的adapter; mylistview.setAdapter(adapter); } private void findView(){ //通过findViewById得到对应的空间对象; mylistview=(MyListView)findViewById(R.id.myListView1); } private void getData() { // TODO Auto-generated method stub //获得xml的资源 String names[]; String article[]; TypedArray img; int i; //通过getResources方法获取arrays内的字段 names=getResources().getStringArray(R.array.name); article=getResources().getStringArray(R.array.article); img=getResources().obtainTypedArray(R.array.head_photo); list_msg=new ArrayList               (); for(i=0;i                     

到这里本项目可以说简单完工,本项目是一个简单的Android-ADT开发,菜鸟一枚!多多建议,批评!










版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/217522.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 上午9:23
下一篇 2026年3月18日 上午9:23


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号