我们如何给出muticolumn列表视图的标题(如表标题)
例如我需要这样
RouteCode RouteName Outelet
0001 aaaaa 10
0002 bbbbb 20
但目前显示如下
0001 aaaaa 10
0002 bbbbb 20
我已经完成了使用SimpleAdapter
ListView list = getListView();
sd = new SimpleAdapter(this, routhPath, R.layout.route_path,new String[] {"routeCode","routeName","outlets" },new int[] { R.id.routeCode,R.id.routeName,R.id.outlets});
list.setAdapter(sd);
list.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
list.setSelected(true);
list.setSelection(0);
list.setTextFilterEnabled(true);
list.setItemsCanFocus(true);
list.setItemChecked(positions, true);
list.setSelectionAfterHeaderView();
我的列表视图也是:
<ListView android:id="@android:id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:clickable="true"
android:dividerHeight="2dp"
android:divider="@drawable/divider"
android:textFilterEnabled="true"
android:scrollbars="vertical"
android:layout_gravity="fill_vertical"
android:drawSelectorOnTop="false"
android:clipChildren="true"
android:fitsSystemWindows="true"
android:smoothScrollbar="true"
android:cacheColorHint="#fff"
android:fastScrollEnabled="false"
/>
另一个问题
如何区分列表中的特定行(区分不同的颜色)?我需要这个默认路由在db中设置。然后该行应显示不同的颜色。 我该如何实现呢?
例如当它加载时我想要显示红色的第2或第3或......行 请帮帮我
提前致谢
答案 0 :(得分:2)
第一个问题
您想要列表中的几个项目的标题,还是只需要完整列表的标题?
如果您只想要列表标题,可以使用listview.addHeaderView(View v)或其他addHeaderView,请检查两者的链接。
另一种方法是在列表中使用不同的标头时使用自定义适配器。要么自己的适配器,有很多不同的自定义适配器示例。
那里还有不同的图书馆。列表视图中包含不同标题的两个示例是seperatedlistadapter,另一个是CommonsWare MergeAdapter。
修改:您的第二个问题 我肯定会使用自己的自定义适配器来执行此操作。这里有一个很好的例子:http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List14.html 在该示例中,它们具有针对不同行的不同绘图。
// Bind the data efficiently with the holder.
holder.text.setText(DATA[position]);
holder.icon.setImageBitmap((position & 1) == 1 ? mIcon1 : mIcon2);
根据所需的位置,图像交替显示。
答案 1 :(得分:1)
我做了第一个问题:
View row = null;
ListView list = getListView();
sd = new SimpleAdapter(this, routhPath, R.layout.route_path,new String[] {"routeCode","routeName","outlets" },new int[] { R.id.routeCode,R.id.routeName,R.id.outlets});
row = getLayoutInflater().inflate(R.layout.route_path_row, null, false);
getListView().addHeaderView(row);
我为列表内容创建了2个xml。另一个是标题。