列表视图ListView之二-创新互联

在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示。

为灵武等地区用户提供了全套网页设计制作服务,及灵武网站建设行业解决方案。主营业务为成都网站建设、网站设计、灵武网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

在上一章,我们采用ArrayAdapter填充ListView,本章我们了解一下SimpleAdapter的应用。

一、SimpleAdapter应用

1、打开“res/layout/activity_main.xml”文件。

完整代码如下:  


  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="horizontal" >
      android:id="@+id/picture"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="5dip"
     android:contentDescription="@string/desc" />

      android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

          android:id="@+id/title"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:textColor="#16CCDD"
      android:textSize="22sp" />

          android:id="@+id/info"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:textColor="#666666"
      android:textSize="16sp" />

  


2、ListView代码 

(1)打开“src/com.genwoxue.listview_b/MainActivity.java”文件。

然后输入以下代码:

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import android.app.ListActivity;
import android.os.Bundle;
import android.widget.SimpleAdapter;

//ListActivity本质仍然是一个Activity,只不过对于ListVivew更方便
public class MainActivity extends ListActivity {//写成Activity的话下面的setListAdapter会报错。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
//注意SimpleAdapter适配器用法
SimpleAdapter adapter = new SimpleAdapter(this, getData(),//list
R.layout.activity_main, new String[]{"title","info","picture"},
new int[]{R.id.title,R.id.info,R.id.picture});
setListAdapter(adapter);
}

private List> getData() {
List> list = new ArrayList>();
Map map = new HashMap();
map.put("title", "图片");
map.put("info", "美辰良景,给你无限的遐思,让人感觉无限温馨……");
map.put("picture", R.drawable.photo);//图片提前复制到drawable-hdpi文件夹了
list.add(map);

map = new HashMap();
map.put("title", "音乐");
map.put("info", "轻曼音乐,令人如入仙境,如痴如醉……");
map.put("picture", R.drawable.music);
list.add(map);

map = new HashMap();
map.put("title", "视频");
map.put("info","震撼场景,360度的视觉捕获,一览无遗……");
map.put("picture", R.drawable.video);
list.add(map);
return list;
}

}

ListView列表视图的显示需要三个元素:

A.ListVeiw 用来展示列表的View。

B.适配器 用来把数据映射到ListView上的中介。

C.数据 具体的将被映射的字符串,图片,或者基本组件。

simpleAdapter的扩展性最好,可以定义各种各样的布局出来,可以放上ImageView(图片),还可以放上Button(按钮),CheckBox(复选框)等等。下面的代码都直接继承了ListActivity,ListActivity和普通的Activity没有太大的差别,不同就是对显示ListView做了许多优化,方便显示而已。

(2)运行结果:

列表视图ListView之二

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前标题:列表视图ListView之二-创新互联
网站地址:http://azwzsj.com/article/coigos.html