当前位置:首页 » 安卓系统 » android数据库listview

android数据库listview

发布时间: 2023-04-17 00:42:05

‘壹’ android数据库更新后怎样刷新listview数据

重写onStart(),在里面加上getData()即可,也就是每次进入这个页面就刷新数据

‘贰’ android控件listview怎样显示数据库数据呢

先创建一个帮助类BaseHelper,继承SQLiteOpenHelper,然后在获得读取的权限,BaseHelper.getReadableDatabase();查询:Cursor cursor = db.query(TABLE_NAME,str,null,null,null,null,null);,接着放到adapter里面然后就显示出来SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.showcontact, cursor, FROM, TO);
setListAdapter(adapter);。大概流程就这样,具体看帮助文档或者网络+google

‘叁’ android 怎么把存入数据库的信息显示在ListView中

访问并查询数据库将数据取出 ,然后用adapter绑定到listview就行了

‘肆’ android中怎么将数据库中值显示在listview中

假设从数据库获取到的数据为list

自定义Adapter继承自BaseAdapter,重写getView方法,实例化列表项并且绑定数据就可以了

java">/**新建一个类继承BaseAdapter,实现视图与数据的绑定*/
{
;//得到一个LayoutInfalter对象用来导入布局
privateListlist;

/**构造函数*/
publicMyAdapter(Contextcontext,Listlist){
this.mInflater=LayoutInflater.from(context);
this.list=list;
}

@Override
publicintgetCount(){
returnlist.size();//返回数组的长度
}

@Override
publicObjectgetItem(intposition){
returnlist.get(position);
}

@Override
publiclonggetItemId(intposition){
return0;
}

@Override
publicViewgetView(finalintposition,ViewconvertView,ViewGroupparent){
ViewHolderholder;
if(convertView==null){
convertView=mInflater.inflate(R.layout.item,null);
holder=newViewHolder();
/**得到各个控件的对象*/
holder.title=(TextView)convertView.findViewById(R.id.ItemTitle);
holder.text=(TextView)convertView.findViewById(R.id.ItemText);
holder.bt=(Button)convertView.findViewById(R.id.ItemButton);
convertView.setTag(holder);//绑定ViewHolder对象
}
else{
holder=(ViewHolder)convertView.getTag();//取出ViewHolder对象
}

holder.title.setText(list.get(position).getId().toString());
holder.text.setText(list.get(position).getName().toString());

returnconvertView;
}

/**存放控件*/
classViewHolder{
publicTextViewtitle;
publicTextViewtext;
}

}

‘伍’ android listview怎么更新数据

0、本质上是listview绑定Adapter,Adapter关联List,因此List变化后导致Adapter同步变化;再通过调用adapter.notifyDataSetChanged();方法使得listview界面自动更新。
操作:
1、List<String> strName = new ArrayList<String>();//实际的数据源
2、Adapter adapter = new ArrayAdapter<String>(context,
R.layout.xmlforitem, strName);//适配器,其中 R.layout.xmlforitem是列表中每一项的布局,可以用默认的也可自建,strName则是将数据源绑定到适配器
3、listView.setAdapter(adapter);//将适配器绑定到列表显示控件ListView;
4、strName.add("TEST ONE");//增加一项,引起list变化,Adapter也随之变化;
5、adapter.notifyDataSetChanged();//调用notifyDataSetChanged();更新适配器,ListView会自动刷新,notifyDataSetChanged()方法可能需要在UI线程中调用,建议自行测试;

6、数据增加可能引起内存变化,需防内存溢出;
7、其他。

以上仅供参考,建议多搜索相关文档。

‘陆’ android中listview怎么用

创建继承BaseAdapter并实现其抽象方法的类MyListViewAdapter
说明
下面的讲解中,只创建自定义的适配器类,如何使用请参考android中常用控件的使用之ListView
1.创建类MyListViewAdapter
创建类MyListViewAdapter,该类继承BaseAdapter,并实现其抽象方法:
1
2
3
4

int getCount();
Object getItem(int position);
long getItemId(int position);
View getView(int position,View convertView,ViewGroup parent);

getCount需要返回有多少个item,也就是说最会在listview中展示这么多行
getItem需要返回参数position位置的数据
getItemId返回position就行了
2.给MyListViewAdapter类添加成员变量和构造方法
两个成员变量
1
2

List<String> list;
Context context;

list表示要显示的数据,context变量在生成View对象时需要用到
构造方法:构造方法是为了给两个成员变量赋值
1
2
3
4

public MyListViewAdapter(List<String> list , Context context) {
this.list = list;
this.context = context;
}

3.给getCount,getItem,getItemId方法添加代码
getCount需要返回有多少个item,也就是说最会在listview中展示这么多行,所以返回list.size
getItem需要返回参数position位置的数据,也就是list中第position项的值list.get(position)
getItemId返回position就行了
1
2
3
4
5
6
7
8
9
10
11
12
13
14

@Override
public int getCount() {
return list.size();
}

@Override
public Object getItem(int position) {
return list.get(position);
}

@Override
public long getItemId(int position) {
return position;
}

4.给getView方法添加代码
getView方法是返回位置为position的View对象,第二个参数convertView考虑到资源重用问题,在上下滑动的过程中,需要显示某项的时候才会调用getView方法,而如果有某项被隐藏不显示,就会把不显示那一行的View作为convertView参数传入,如果没有某项被隐藏,convertView值为null。可以通过下面代码中的if(convertView!=null)中的输出来看哪一行被隐藏了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

@Override
public View getView(int position, View convertView, ViewGroup parent) {
System.out.println("调用getView方法,显示position="+position+"项");
if(convertView!=null){
TextView t = (TextView) convertView.findViewById(R.id.firstTextView);
System.out.println(t.getText());
}else{
LayoutInflater layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = layoutInflater.inflate(R.layout.item_mylistviewadapter, null);
}
TextView t = (TextView)(convertView.findViewById(R.id.firstTextView));
t.setText(list.get(position));
if(position%2==0)
{
t.setBackgroundColor(Color.WHITE);

}
else{
t.setBackgroundColor(Color.GRAY);
}
return convertView;
}

补充:通过xml生成View对象
通过Context对象生成一个LayoutInflater对象
调用LayoutInflater对象的inflate方法生成控件对象,inflate方法的第一个参数为xml文件,第二个参数一般为null。返回值为该xml文件最外层的标签对象。
1
2

LayoutInflater layoutInflater =(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout convertView =(LinearLayout)layoutInflater.inflate(R.layout.item_mylistvie

源代码下载
pan..com/s/1ntuQDdv

‘柒’ android listVIew下拉时添加数据库的数据,怎么样每次只添加5条

两种:

1:下拉的时候发请求,让服务器返回5条数据
2:把数据存在本地数据库,每次下拉的时候取出5条显示

‘捌’ android如何将从数据库读取的数据显示在listview中

final SimpleAdapter adapter = new SimpleAdapter(this, getData(),
R.layout.mainlayout, new String[] { "text", "time", "image" },
new int[] { R.id.PL_TextView01, R.id.PL_TextView02,
R.id.PL_ImageView01 });
lv.setAdapter(adapter);

private List<Map<String, Object>> getData() {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map = new HashMap<String, Object>();

Cursor cur = DR.query("DB", new String[] { "text", "time" }, null,
null, null, null, "time desc");
while (cur.moveToNext()) {
for (int i = 0; i < cur.getCount(); i++) {
cur.moveToPosition(i);
String text = cur.getString(0);
String time = cur.getString(1);

map = new HashMap<String, Object>();

map.put("text", text);
map.put("time", time);
map.put("image", R.drawable.ic_menu_close_clear_cancel);
list.add(map);
}
}

return list;
}

我是使用SimpleAdapter 作为listview的适配器 通过数据的query方法 将数据放入listview

‘玖’ android如何将从数据库读取的数据显示在listview中

本地数据就用ormlite-android-4.19.jar和ormlite-core-4.19.jar 可以帮助你管理本地数据,网络上的数据应该要后台做接口让你去调用,adapter可以写一个方法addpendList或者setList,这两个方法都是控制当前adapter持有的list的,adapter可以持有这个list并且给每个item设置布局。

本地得到的数据就是List,如果是服务器的数据就是JSON格式,可以用JSONUtil.java之类的去解析然后获取list,不是list的数据就直接res.getString("name");

ListView.SetAdapter();就可以设置adapter了,然后adapter如果有数据就会填充List

刷新的话是adapter.notifyDataSetChanged();

热点内容
winftp下载 发布:2024-05-17 21:51:33 浏览:692
压缩板包装 发布:2024-05-17 21:44:59 浏览:264
安卓大屏怎么安装手机卡 发布:2024-05-17 21:39:09 浏览:753
xml导入sql 发布:2024-05-17 21:34:13 浏览:526
苹果x怎么清除缓存 发布:2024-05-17 21:34:00 浏览:786
我的世界红石怎么卡服务器 发布:2024-05-17 21:03:53 浏览:44
吃面包解压神器 发布:2024-05-17 20:50:32 浏览:336
木料方算法 发布:2024-05-17 20:44:18 浏览:763
手机可以换内置存储 发布:2024-05-17 20:31:37 浏览:745
泛型编程stl 发布:2024-05-17 20:26:34 浏览:934