Android中ListView设置静态数据的方法
程序员文章站
2023-12-13 18:49:52
有的时候我们需要为一个listview设置固定的数据,下边就是如何设置静态的数据,之前先给大家看一看效果图:
布局文件listview 的主页面
<&...
有的时候我们需要为一个listview设置固定的数据,下边就是如何设置静态的数据,之前先给大家看一看效果图:
布局文件listview 的主页面
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <listview android:id="@+id/listview" android:layout_width="fill_parent" android:layout_height="fill_parent" > </listview> </linearlayout>
然后的一个布局文件为每一个listview的item,listview_item.xml有图片和文字
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <imageview android:id="@+id/listitem_iv" android:layout_width="74dp" android:layout_height="74dp" android:src="@drawable/about_brand" /> <textview android:id="@+id/listitem_tv" android:layout_width="match_parent" android:layout_height="74dp" android:text="textview" android:textalignment="center" android:textsize="55dp" /> </linearlayout>
然后关键的是如何设置静态数据:
这界面的控制类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<map<string, object>> listitem = new arraylist<map<string, object>>(); // 将上述资源转化为list集合 for (int i = 0; i < title.length; i++) { map<string, object> map = new hashmap<string, object>(); map.put("image", imageid[i]); map.put("title", title[i]); listitem.add(map); } listviewadapter adapter = new listviewadapter(this, listitem); listview.setadapter(adapter); listview.setonitemclicklistener(new onitemclicklistener() { @override public void onitemclick(adapterview<?> parent, view view, int position, long id) { toast.maketext(listviewuseadapter.this, "haha", toast.length_short).show(); } }); } }
然后需要的适配器如下:
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<map<string, object>> listitem; public listviewadapter(context context, list<map<string, object>> 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<string, object> map = listitem.get(position); imageview.setimageresource((integer) map.get("image")); textview.settext(map.get("title") + ""); return convertview; } }
希望本文所述对大家学习android软件编程有所帮助。
推荐阅读
-
Android中ListView设置静态数据的方法
-
Android ListView中headerview的动态显示和隐藏的实现方法
-
Android中 自定义数据绑定适配器BaseAdapter的方法
-
Android ListView数据绑定显示的三种解决方法
-
Android中ListView的item点击没有反应的解决方法
-
Android笔记之:在ScrollView中嵌套ListView的方法
-
Android中ListView下拉刷新的实现方法实例分析
-
Android开发中Listview动态加载数据的方法示例
-
android中ListView多次刷新重复执行getView的解决方法
-
设置SQLServer数据库中某些表为只读的多种方法分享