有的时候我们需要为一个listview设置固定的数据,下边就是如何设置静态的数据,之前先给大家看一看效果图:
布局文件listview 的主页面
<&#63;xml version="1.0" encoding="utf-8"&#63;>
然后的一个布局文件为每一个listview的item,listview_item.xml有图片和文字
<&#63;xml version="1.0" encoding="utf-8"&#63;>
然后关键的是如何设置静态数据:
这界面的控制类ListViewUseAdapter.java
import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.Toast; import android.widget.AdapterView.OnItemClickListener; import android.widget.ListView; public class ListViewUseAdapter extends Activity { private ListView listview; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.listview_test); listview = (ListView) this.findViewById(R.id.listview); // 设置适配器的图片资源 int[] imageId = new int[] { R.drawable.chat_tool_camera, R.drawable.chat_tool_location, R.drawable.chat_tool_paint, R.drawable.chat_tool_video, R.drawable.chat_tool_voice, R.drawable.about_brand }; // 设置标题 String[] title = new String[] { "相机", "定位", "画笔", "视频", "声音", "聊天" }; List
然后需要的适配器如下:
import java.util.List; import java.util.Map; 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.TextView; public class ListViewAdapter extends BaseAdapter { private Context context; private List> listitem; public ListViewAdapter(Context context, List > listitem) { this.cOntext= context; this.listitem = listitem; } @Override public int getCount() { return listitem.size(); } @Override public Object getItem(int position) { return listitem.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { if (cOnvertView== null) { cOnvertView= LayoutInflater.from(context).inflate(R.layout.listview_item, null); } ImageView imageView = (ImageView) convertView.findViewById(R.id.listitem_iv); TextView textView = (TextView) convertView.findViewById(R.id.listitem_tv); Map map = listitem.get(position); imageView.setImageResource((Integer) map.get("image")); textView.setText(map.get("title") + ""); return convertView; } }
希望本文所述对大家学习Android软件编程有所帮助。