android控件—ListView(1)

来源:互联网 发布:微信红包牛牛源码v8 编辑:程序博客网 时间:2024/06/06 01:01

这个Demo实现如下效果
这里写图片描述

代码如下
整个大的界面随便主界面 但是 里面要放一个ListView 进去

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:orientation="vertical" >    <ListView        android:id="@+id/listView1"        android:layout_width="match_parent"        android:layout_height="wrap_content" >    </ListView></LinearLayout>

还有一个就是ListView里面每一个 的样式
安卓系统有默认的样式 也可以写需要在每一行显示的样式 本例是自己的的一个xml 但也没有什么效果就是实现一下自己写的部分
给自己写的这个xml起名叫做array
如下

<?xml version="1.0" encoding="utf-8"?><TextView xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="100dp" ></TextView>

还有一个弹出显示类的信息获取这里也单独写了一个类
名字叫做arraycell
如下

package com.example.exce_4;public class arraycell {    private String name = "  ";    private String sex = "  ";    private int age =0;     public arraycell(String name,String sex,int age){        this.name = name;        this.sex = sex;        this.age = age;    }    public String getName() {//get 和set方法可以右键sousure 创建        return name;    }    public void setName(String name) {        this.name = name;    }    public String getSex() {        return sex;    }    public void setSex(String sex) {        this.sex = sex;    }    public int getAge() {        return age;    }    public void setAge(int age) {        this.age = age;    }    public String  toString (){        return getName();    }}

下来看主函数部分的实现 要显示还必须绑定一个适配器

package com.example.exce_4;import java.util.List;import android.os.Bundle;import android.support.v7.app.ActionBarActivity;import android.view.View;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.ArrayAdapter;import android.widget.ListView;import android.widget.Toast;public class MainActivity extends ActionBarActivity implements OnItemClickListener {    private ListView lv;//声明一个ListView    private ArrayAdapter<arraycell> adapter; //ArrayAdapter的列表xml必须是textvivw    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        adapter = new ArrayAdapter<arraycell>(this, R.layout.array);//第二个是列表项的资源id 可以自己写        lv = (ListView) findViewById(R.id.listView1);        lv.setAdapter(adapter);//绑定一个adapter         adapter.add(new arraycell("陀","男",47));         adapter.add(new arraycell("草泥马","人妖",100000));         adapter.add(new arraycell("蠢狗","公",59));         lv.setOnItemClickListener(this);    }    @Override    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2/*操作的位置*/, long arg3) {        // TODO Auto-generated method stub        arraycell  data = adapter.getItem(arg2);//返回值是数据类型        //弹出内容在这里!!!!!!!!!!        Toast.makeText(this,String.format("姓名 :%s,性别:%s,年龄:%d", data.getName(),data.getSex(),data.getAge()) ,Toast.LENGTH_SHORT).show();    }}
0 0
原创粉丝点击