Android-如何与数据库结合动态适配listview的布局

发布于 2017-01-17 11:02:53 字数 124 浏览 1180 评论 2

listview的item需要根据程序数据库中的某个字段的值来采用不同布局,
比如数据库表名为idea,字段为category,数据类型为varchar
有两个值为text和sound,这两个值分别对应不同的布局。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

泛泛之交 2017-08-08 22:52:23

下面的adapter你可以试下:

class MyAdapter extends CursorAdapter {

public AppListAdapter(Context context, Cursor c) {
super(context, c);
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
Cursor cursor = getCursor();
cursor.moveToPosition(position);
final String name = cursor.getString(cursor.getColumnIndex("category"));
if ("text".equals(name)) {
convertView = getLayoutInflater.inflate(R.layout.item_layout1, null);
} else if ("sound".equals(name)) {
convertView = getLayoutInflater.inflate(R.layout.item_layout1, null);
}
return convertView;
}

@Override
public void bindView(View arg0, Context arg1, Cursor arg2) {
}

@Override
public View newView(Context arg0, Cursor arg1, ViewGroup arg2) {
return null;
}
}

浮生未歇 2017-04-20 12:00:51

最笨的方法就是写两个adapter类,用一个if来判断什么情况下加载哪个adapter类

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文