- 浏览: 258232 次
- 性别:
- 来自: 长沙
文章分类
最新评论
-
aaddsfdsfsdfs:
var map = new AMap.Map('contain ...
【map】使用高德地图显示地图轨迹 -
di1984HIT:
xiang
【linux】使用bind进行DNS配置 -
di1984HIT:
分别算么??
【java】改写js百度地图测距方法 -
di1984HIT:
不错不错。。
【LBS】使用高德地图实现轨迹路线 -
di1984HIT:
不好用啊???
【map】使用高德地图显示地图轨迹
网络上的那个东西似乎都不准,以下是我做的此方法为可行。
首先,main.xml
然后list.xml
以下是自定义组件。
自定义adapter方法
下面是Acitivity
首先,main.xml
<?xml version="1.0" encoding="utf-8"?> <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>
然后list.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/_id" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:text="TextView" /> <CheckedTextView android:id="@+id/checkText" android:layout_width="fill_parent" android:layout_height="?android:attr/listPreferredItemHeight" android:textAppearance="?android:attr/textAppearanceLarge" android:gravity="center_vertical" android:checkMark="?android:attr/listChoiceIndicatorMultiple" android:paddingLeft="6dip" android:paddingRight="6dip" /> </RelativeLayout>
以下是自定义组件。
public final class Compan { public TextView id; public CheckedTextView ctv; }
自定义adapter方法
package com.duduli.li; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.content.Context; import android.database.Cursor; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.CheckedTextView; import android.widget.SimpleCursorAdapter; import android.widget.TextView; public class MyAdapter extends SimpleCursorAdapter{ private List list = new ArrayList(); public String s[]; private List<Map<String, Object>> data; private LayoutInflater layoutInflater; private List<String> delNumber = new ArrayList<String>(); @SuppressWarnings("unused") private Context context; public MyAdapter(Context context, int layout, Cursor c, String[] from, int[] to) { super(context, layout, c, from, to); this.context = context; this.data = getData(); this.layoutInflater = LayoutInflater.from(context); } @Override public int getCount() { // TODO Auto-generated method stub return super.getCount(); } @Override public Object getItem(int position) { // TODO Auto-generated method stub return super.getItem(position); } @Override public long getItemId(int position) { // TODO Auto-generated method stub return super.getItemId(position); } @SuppressWarnings("unused") @Override public View getView(final int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub Compan cp = null; if(cp == null){ cp = new Compan(); convertView = layoutInflater.inflate(R.layout.list, null); cp.id = (TextView) convertView.findViewById(R.id._id); cp.ctv = (CheckedTextView) convertView.findViewById(R.id.checkText); convertView.setTag(cp); }else{ cp = (Compan) convertView.getTag(); } cp.id.setText((CharSequence) data.get(position).get("_id")); cp.ctv.setText((CharSequence) data.get(position).get("Number")); return convertView; } public List<Map<String, Object>> getData() { List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); while (getCursor().moveToNext()) { Map<String, Object> map = new HashMap<String, Object>(); // System.out.println("ID: "+getCursor().getString(0)); map.put("_id", getCursor().getString(0)); // System.out.println("NAME: "+getCursor().getString(1)); map.put("Number", getCursor().getString(1)); list.add(map); } return list; } }
下面是Acitivity
package com.duduli.li; import android.app.ListActivity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.CheckedTextView; import android.widget.ListView; import com.duduli.db.AllowCallDAO; /** * This example shows how to use choice mode on a list. This list is * in CHOICE_MODE_MULTIPLE mode, which means the items behave like * checkboxes. */ public class CallComingTest2Activity extends ListActivity { private CheckedTextView multiple; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); AllowCallDAO dao = new AllowCallDAO(this); MyAdapter adapter = new MyAdapter(this, R.layout.list, dao.show() , new String[]{"_id","phonenr"}, new int[]{R.id._id,R.id.checkText}); final ListView listView = getListView(); listView.setItemsCanFocus(false); setListAdapter(adapter); } @Override protected void onListItemClick(ListView l, View v, int position, long id) { // TODO Auto-generated method stub System.out.println(position); // [b]下面的才是最重要的,网络上写的为:multiple = (CheckedTextView)l.getChildAt(position).findViewById(R.id.checkText);此方法很有问题,比如说listview进行翻页之后就会出问题。[/b] multiple = (CheckedTextView)v.findViewById(R.id.checkText); if(multiple != null){ System.out.println("not null"); }else{ System.out.println("null"); } if(multiple.isChecked()){ multiple.setChecked(false); }else{ multiple.setChecked(true); } super.onListItemClick(l, v, position, id); } }
发表评论
-
【android】访问web service(大概功能版)
2012-10-30 08:36 1368增加功能: 1,用户点击次数过快。提示。 2,增加progre ... -
【android】web service访问
2012-10-26 10:20 1372android对web service的访问。使用ksoap2 ... -
【android】在2.3.3下面是用DDMS模拟位置会死机
2012-08-05 15:54 1072整了很久很久。每次都是死机。 调试也调试了很久,最后发现在2. ... -
【android】一个小问题让我纠结了很久
2012-03-20 09:43 1486之前处理cursor的方法:此方法是有问题的!!! pub ... -
【android】使用checkedTextView形成自定义ListView(续)
2012-03-15 10:06 4723前面的已经介绍了如何将check选中,但是很不尽如人意的是,每 ... -
【android系统问题】呼叫状态变化
2012-03-09 14:09 1898测试。做一个Receiver监听手机通话状态。发现这样个问题。 ... -
【android】电话接听状态事件
2012-03-01 10:36 3366androidmanifest权限: <uses-per ... -
【android】自定义listView(转http://yilee.info/android-diy-listview.html)
2012-02-29 14:25 1643本文讲实现一个自定义列表的Android程序,程序将实现一个使 ... -
【android】 sqliter数据库CRUD
2012-02-27 16:16 1338基础类,DBHelper package com.duduli ... -
【android】以前没有注意的一个ListActivity的问题
2012-02-27 15:52 1381以前自己都很少使用ListActivity。今天使用的时候就出 ... -
【android】的startActivityForResult
2012-02-24 16:41 1230似乎这个做登录或是论坛回复很好的。 不用返回。 一下几点需要注 ... -
【android】widget生命周期
2012-02-23 17:07 3592在widget开发的时候生命周期如下: 第一次创建桌 ... -
【android】传感器
2011-12-03 10:41 1030IBM develop 对android传感器的研究与开发。 ... -
【android】使用百度api获得你的地址
2011-12-02 12:06 3791采用百度开放平台的api对自己位置的定位的好处有很多。 1,完 ... -
【android】练手的小玩意
2011-11-30 16:17 1057这是个小程序,调用Google地图。显示你的大概位置。 当然不 ... -
【android】 百度地图应用开发(一)
2011-11-30 11:47 1764百度提供给我相当多的地图开发的api,比如地图,比如定位。 初 ... -
【android】利用service监听来电或来信息
2011-11-28 16:09 8115写这个东西只是为了练手,拍砖随意。反正自己也是菜鸟。 微信/Q ... -
【android地图】开发出现的问题。
2011-11-26 16:24 11252个问题,在虚拟机上没有这样的问题,但是到真机上实验的时候去出 ... -
android开发下的一些技术要点【如有需要会更新】
2011-11-14 15:36 38731,对于去title方法。在o ... -
android开发:Google天气获得气象信息
2011-11-07 16:21 1115这个只能算是半成品,之前想做一个wigdit的。可是没完成。 ...
相关推荐
总结,自定义ListView实现单选是Android开发中常见的需求。通过创建自定义Adapter,处理点击事件,以及优化视图复用,我们可以轻松实现这一功能。同时,自定义ListView也能为开发者提供更大的灵活性,以满足各种复杂...
自定义ListView是为了满足更复杂的需求,比如添加特定的视图元素、实现特殊的功能或者优化性能。在这个例子中,我们关注的是“自定义含多选框的ListView”。 自定义ListView主要涉及以下几个方面: 1. **适配器...
为了实现选择功能,我们通常会用到CheckedTextView或者自定义的Checkable布局作为ListView的列表项。 1. **自定义Adapter**: 创建一个继承自BaseAdapter的自定义Adapter,重写其四个关键方法:`getCount()`、`...
`FullListView`可能是一个包含上述所有功能的自定义ListView实现,它不仅支持列宽的拖动调整,还能显示和停止运行的程序。这个示例可以帮助开发者更好地理解如何在实际项目中使用和扩展ListView。 总之,Android的...
- 若需在ListView项中添加复选框,可以使用CheckedTextView或自定义布局。同时,设置`setChoiceMode()`启用选择模式,如单选(CHOICE_MODE_SINGLE)或多选(CHOICE_MODE_MULTIPLE)。 8. **下拉刷新和上拉加载更多...
如果你的ListView项是自定义的View,你可以使用实现`Checkable`接口的子视图,如`CheckedTextView`,这样在选中时会自动处理背景颜色和复选标记。 综上所述,创建一个多选ListView涉及设置ChoiceMode、维护选中状态...
然后,在Activity中找到这个ListView并设置适配器,适配器通常是继承自BaseAdapter的自定义类,负责填充数据和渲染视图。例如: ```java ListView listView = findViewById(R.id.myListView); ArrayAdapter<String>...
本示例"安卓listview相关相关-androidlistview长按子项动态添加自定义viewTestView.rar"聚焦于ListView的一项高级用法:长按子项时动态添加自定义View。这个功能可以提升用户体验,比如在邮件应用中,长按邮件可以弹...
在Android开发中,ListView是一种常用的组件,用于展示大量的数据列表。在实际应用中,我们经常需要为ListView添加多选功能,以便用户可以选取多个条目进行操作,如删除、编辑等。"android中listview多选demo"就是一...
"android自定义多选对话框"是一个常见的需求,特别是在需要用户从多个选项中进行选择时。在这个主题中,我们将深入探讨如何创建这样一个自定义的多选对话框。 首先,Android的`AlertDialog`类是系统提供的标准...
本文将深入探讨如何在Android中实现一个自定义的多选ListView。 首先,我们需要了解ListView的基本结构。ListView由多个列表项(ListView Item)组成,每个列表项通常是一个View或一个自定义的ViewGroup。在多选...
- 多选模式下,通常需要一个CheckedTextView或者自定义带有Checkbox的布局。可以通过设置OnCheckedChangeListener来处理多选逻辑。 5. **点击事件处理** - ListView默认会捕获点击事件,如果同时要处理Checkbox的...
与CheckedTextView不同,CheckableTextView并不是Android SDK自带的控件,而是开发者自定义的一个类,它可以扩展任何TextView,并添加可选中功能。这样做的好处是灵活性更高,可以根据项目需求定制更多的行为和样式...
在Android开发中,ListView是一种非常重要的视图组件,它允许我们展示大量的数据并进行滚动浏览。这个"android listview 例子"着重展示了ListView在实际应用中的复杂使用方式,特别是如何在一个ListView中包含各种...
虽然题目是关于ListView的,但现代的Android开发中,通常推荐使用RecycleView代替ListView,因为它提供了更多的自定义选项和更好的性能。实现RecycleView的选中高亮效果与ListView类似,只是需要适配的是...
本篇文章将深入探讨如何在Android中自定义ListView的效果。 首先,我们从基础开始。ListView通过Adapter来绑定数据,Adapter是连接ListView和数据源的桥梁。常见的Adapter有ArrayAdapter、SimpleAdapter等,但为了...
如果需要在列表项中包含复选框,可以使用CheckedTextView或者自定义布局,并在Adapter中处理复选状态。同时,ListView还支持选择模式,如SINGLE_CHOICE, MULTIPLE_CHOICE等,可以通过`setChoiceMode()`设置。 **6. ...
总之,实现Android三级目录和ListView单选及二级单选涉及到了数据结构、自定义Adapter、事件监听、布局设计等多个Android开发的关键技术。通过这些技术的组合,我们可以创建出一个功能完整且用户体验良好的目录选择...
在Android开发中,ListView是一个非常重要的控件,它允许开发者在一个垂直滚动的列表中展示大量数据。本资料包“34.ListView控件学习”显然旨在深入解析ListView的使用方法和技巧,通过源码分析帮助开发者更好地理解...
实现ListView的单选,我们可以使用CheckedTextView或者自定义适配器来配合CheckedStateTracker类进行操作。下面我们将详细探讨如何实现这一功能。 首先,我们来看看CheckedTextView。CheckedTextView是TextView的...