Some words about me

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas a urna sit amet leo sagittis cursus a at lectus. Donec bibendum facilisis ultricies. Maecenas nec arcu dui, ut lobortis erat. In nec condimentum quam. Vivamus euismod scelerisque ligula vitae fermentum. Nulla dignissim rutrum eleifend.

Donec mi eros, congue ut consectetur eget, pretium vitae orci. Aliquam pharetra ultricies lobortis. Morbi eget nisi lectus. Maecenas felis augue, molestie in vestibulum et, lacinia et leo. Suspendisse potenti. Maecenas eget est augue. Donec tincidunt mollis fermentum.

Contact me?

 
 
 

Donec mi eros, congue ut consectetur eget, pretium vitae orci. Aliquam pharetra ultricies lobortis. Morbi eget nisi lectus. Maecenas felis augue, molestie in vestibulum et, lacinia et leo. Suspendisse potenti. Maecenas eget est augue. Donec tincidunt mollis fermentum.

Send the message
 

Android中的ListView(高级控件Widget)

Android中的四大组件:Activity----活动

           BroadCastReceiver-----广播接收器

           Service------服务

           ContentProvider----内容提供器

这里来介绍一下Activity中的listview:列表视图。通过这个控件用户可以与列表互动,互动就会有事件的触发,这个控件就是用户想要通过点击列表中的任意条目有事件的反馈,就要通过注册OnItemClickListener来监听这一类事件。

加载listview有两种方法:第一种是继承Activity,自己实现ListView的标记(id),第二种:是继承ListActicity,系统实现ListView标记(id),然而通过这两种方式时,都要通过Adapter(适配器)来设置显示列表的内容。adapter也可以是一个简单数组ArrayAdapter,也可以是游标(simpleCursorAdapter),还可以采用继承BaseAdaptger来自定义Adapter绑定数据。

//新建一个布局文件(music_layout.xml),采用线性布局,增加一个ListView控件

//新建一个MusicActivity,她继承于Activity,重写Oncreat()方法来初始化music_layout.xml布局

//通过ArrayAdapter来绑定数据,并注册onItemClickListener监听

music_layout.xml的代码:

只写一个控件ListView

<ListView

  android:id="@+id/music_list"

  android:layout_width="fill_parent"

  android:layout_height="wrap_content"

/>

 

MusicActivity里面的代码:

/**

*采用继承Activity来演示Listview控件的使用

*@author Catherine

*

*/

public class MusicActivityy extends Activity{

/*定义一个ListView成员变量来接收ListView的对象*/

private  ListView  mListView;

//初始化列表显示的内容

String [] listdatas={"From sarah with love ","Image me without you","far away from home"};

@Override

protected void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.music_layout);

mListView=(ListView)findviewByid(R.id.music_list);

setTitle("ListView实例演示');

//调用方法

initData();

}

private void intiData(){

//实例化一个数组Adapter,三个参数,this

//表示需要当前引用上下文,第二个参数列表条目表示显示的布局,这里我们调用了系统自带的布局,第三个参数,绑定显示的数据,传入数组

ArrayAdapter<String> arrays =new  ArrayAdapter<String>(this,android.R.Layout.Simple_List_item_1,listDatas);

//调用ListView控件的setAdapter方法绑定adapter

mListView.setAdapter(arrays);

//注册条目单机事件

mListView.setOnItemClickListener(onItemClickListener);

 

}

//通过局部类来实例化单机事件条目的监听器

OnItemClickListener onItemClickListener=new OnItemClickListener(){

@Override

public void onItemClickListener(AdapterView<?> adapter,View v,int position,long id)

{

//这里的adapter是绑定的那个adapter,v是条目显示的view,position,v对应的位置,id:条目的id

//通过Toast来显示响应列表条目的单机事件

Toast.makeText(MusicActivity.this,"onItemClick点击位置是"+position,Toast.LENGTH_SHORT).show();

}

 

}

}

 

posted @ 2013-06-25 00:49  Catherine_Brain  阅读(532)  评论(0编辑  收藏  举报