您的位置:首页 > 其它

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

2015-05-05 08:58 337 查看
**AndroidUI设计基础测试

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



步骤:

1.定义一个实体类作为ListView适配器的适配类型

2.为Listview的子项指定一个自定义布局

3.创建一个自定义适配器,继承ArrayAdapter,重写构造方法和getView方法

MainActiview.java
package com.bzu.r2.mylistview;

import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;

public class MainActivity extends Activity {

private ListView myListView;
private List<Info> list;
private Integer[] image={R.drawable.p1,R.drawable.p2,R.drawable.p3,R.drawable.p4,R.drawable.p5,R.drawable.p6,R.drawable.p7,R.drawable.p8,R.drawable.p9,R.drawable.p10,};
private String[] name={"胡看","卡加拉","埃拉莫","oa.kmnk","就会看了","与外来","又怪咖","挖坑哦","埃瓦德","挖哦父亲"};
private String[] times={"1分钟前","2分钟前","3分钟前","4分钟前","5分钟前","6分钟前","7分钟前","8分钟前","9分钟前","10分钟前"};
private  String[] titles={"房子70年产权到期还属于自己吗?",
"华人裸捐第一人余彭年去世享年93岁将裸捐93亿元",
"程慕阳身份被加拿大确认为落马高官程维高之子",
"程慕阳发律师声明否认有罪聘原赖昌星代理律师",
"大学生坐公交遇女孩一见钟情贴寻人启事寻人","中国翼龙无人战机成本低比美制死神便宜30倍",
"哪位新中国的部长是由国民党俘虏兵成长为开国少将?",
"马伊俐携女儿现身酷劲十足艾玛紧随似小大人",         "林志颖与爱子手牵手街头散步kimi长高变小男神",
"“三桶油”掌门人同日完成调整傅成玉周吉平到龄退休"};

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
list=new ArrayList<Info>();
for(int i=0;i<10;i++){
Info in=new Info();
in.setImage(image[i]);
in.setTime(times[i]);
in.setUserName(name[i]);
in.setTitle(titles[i]);
list.add(in);
}
myListView=(ListView)findViewById(R.id.myLIstView);
myListView.setAdapter(new MyListAdapter(this, list));
}

class MyListAdapter extends BaseAdapter{

private LayoutInflater inflater;
private Context context=null;
private List<Info> list;

MyListAdapter(Context context,List<Info> list){
this.context=context;
this.list=list;
inflater=LayoutInflater.from(this.context);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}

@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return list.get(position);
}

@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ImageView indexImage;
TextView indexNames;
TextView indexTimes;
TextView indexTitles;
if(convertView==null){
//和list_View关联
convertView=inflater.inflate(R.layout.list_view,null);
}
indexImage=(ImageView)convertView.findViewById(R.id.image);
indexNames=(TextView)convertView.findViewById(R.id.userName);
indexTimes=(TextView)convertView.findViewById(R.id.time);
indexTitles=(TextView)convertView.findViewById(R.id.title);

//设置ImageView图片

indexImage.setBackgroundResource(list.get(position).getImage());
//设置文本
indexNames.setText(list.get(position).getUserName());
indexTimes.setText(list.get(position).getTime());
indexTitles.setText(list.get(position).getTitle());

return convertView;
}

}
}

Info.java
package com.bzu.r2.mylistview;

public class Info {
private Integer image;
private String userName;
private String time;
private String title;
public Integer getImage() {
return image;
}
public void setImage(Integer image) {
this.image = image;
}
public String getUserName() {
r
4000
eturn userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
public Info(Integer image, String userName, String time, String title) {
super();
this.image = image;
this.userName = userName;
this.time = time;
this.title = title;
}
public Info(){
super();
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}

}

actiview_botton.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
tools:context="com.bzu.r2.mylistview.Bottom" >

<ListView
android:id="@+id/myLIstView"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</ListView>

</RelativeLayout>

List_view.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/white"
android:orientation="horizontal" >

<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"/>

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="3"
android:orientation="vertical"
>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<TextView
android:id="@+id/userName"
android:textColor="@android:color/black"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<TextView
android:id="@+id/time"
android:layout_marginLeft="120dp"
android:textColor="@android:color/holo_blue_light"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
<TextView
android:id="@+id/title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
</LinearLayout>

</LinearLayout>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: