最近在上手一个app作为练手,是关于失物招领的,其中要实现的一个功能是从云端读取数据展示在app的listview当中,其实这个功能挺常见的,不过这里还是拿来分享一下,主要介绍我解决的过程以及思路。

我认为要注意的!

1.Fragment中如何findbyview?

2.使用simpleAdapter绑定数据

3.如何处理云端得到的数据

4.listview如何展示数据的一些思路

5.处理数据中list与map的应用

6.。。。。

本例中关于云端数据使用了bmob后端云做为数据存储,有关bmob的使用这里不加赘述,想进一步了解的可自行搜索学习。

首先我们先来分析要实现的功能场景,现在云端存储着一些数据,我们要用app将这些数据读取到并且展示出来,因此我们需要一个layout,里面有个listvie作为展示数据使用,另外对于数据的处理我们为每一个item自定义样式,这里需要一个list_item作为展示每一项数据使用。同时我们应该也有一个数据表,定义云端要存储的数据类型等,有了后台数据,也有了展示数据的容器,下一步我们就是要把云端数据与listview联系起来,毕竟数据是要展示给用户看的,所以需要适配器,这里我们选择simpleAdapter。

第一,创建布局。

这是为每项数据展示用的布局

布局效果图

第二,我们需要创建一个数据表

关于数据表的创建,bmob有相应的开发文档,上图代码中继承的父类BmobObject也是bmob提供的。

以上操作都比较简单,接下来我们主要说一下有关数据处理的问题,当我们创建好数据表之后,我们可以在bmob后端数据中进行数据的增加,增加的数据就是我们要读取的数据,假设你已经稍微了解了一下bmob那么根据开发文档,我们使用一下方法获取数据

这个方法是bmob提供的,用他可以获取云端存储的数据,我们分析发现获取的数据存放在一个list集合当中,而且根据list的泛型可以知道,存放的数据类型是FoundData对象,基于此我们后续想要利用这些数据的话就要对得到的数据list进行处理。

在处理数据之前让我们先想明白另外一个问题,那就是适配器,我们知道适配器是连接前端显示与后台数据的一个桥梁,选择合适的适配器很重要,根据得到的数据每项都是一个对象,我们这里可以选择使用simpleAdapter来完成数据的适配。

选择好适配器之后我们来对数据进行处理,我们使用simpleAdapter进行数据适配,那就要看这个适配器需要什么类型的数据了,根据simpleAdapter的构造函数可知,simpleAdapter中需要的数据对象是一个list集合,而且这个list集合中的每一个对象又是一个map集合,因此,我们需要将得到的数据转换成一个list集合并且每个元素又都是map集合,因为得到的数据也是个list集合,不过集合中元素是FoundData对象,因此我们可以使用一个map集合来接收得到的数据

我们现在对得到的数据list进行取值处理,我们使用for循环遍历list的数据,将得到的数据用hashmap存储,这样我们就得到了云端数据,然后将云端数据的hashmap添加到我们创建的list当中,这个list中的每一个元素都是一个map集合。

然后我们处理适配器,将数据布局填充到适配器,并且为listview设置适配器。

simpleAdapter = new SimpleAdapter(getContext(),mapList,R.layout.list_item,new String[]{"title","phone","describe"},new int[]{R.id.lf_title,R.id.lf_phone,R.id.lf_describe});                //数据布局填充adapter,即是绑定数据

listView.setAdapter(simpleAdapter);

simpleAdapter.notifyDataSetChanged();

到此,我们就成功读取到存储在bmob上的数据了,这个demo主要是针对在bmob上存储的数据该如何读取并且使用,其中涉及到的一些处理方法在有些场景中还是可以参考的。

由于还在进阶当中,以上若有不对之处还望指出,造成不便之处还请见谅!

戳原文,更有料!

android bmob获取数据,Android基于bmob后端云实现数据读取相关推荐

  1. 《大数据大创新:阿里巴巴云上数据中台之道》-读书笔记

    目录 0. 前言 1. 大数据的发展历程和价值探索 1.1 大数据发展的关键事件 1.2 大数据的内涵和外延 2.阿里的大数据主张 2.1 云上数据中台赋能业务运行图 2.2 阿里数据中台赋能业务全景 ...

  2. 【读书笔记】《大数据大创新:阿里巴巴云上数据中台之道》

    今天开始阅读<大数据大创新:阿里巴巴云上数据中台之道>,对数据中台的建设非常感兴趣,也是我日后的求职方向,冲鸭! 大数据发展价值 数据量飞速增长 从TB到PB用了20年,从PB跃升至ZB仅 ...

  3. Android 基于第三方登录(使用Bmob后端云存储数据)实现记忆用户登录、不必重复登录

    最近在开发一个Android 社交app,其中引入了第三方登录的接口,数据存储使用Bmob后端云.有个问题曾困扰了我很久,就是记忆用户登录的问题.众所周知,如果是自己的服务器,进行用户登录,其实完全可 ...

  4. android字符串获取数字索引,从字符串中提取特定数据(Extract specific data from a string)...

    从字符串中提取特定数据(Extract specific data from a string) 我有一个带有描述的长字符串. 我想从字符串中提取一些信息. 但我无法弄明白该怎么做. 这是字符串: C ...

  5. android定位获取坐标系,Android 定位坐标过滤算法实现

    繁星coding 1.位置服务的简介:位置服务,英文翻译为Location-Based Services,缩写为LBS,又称为定位服务或基于位置的服务,融合了GPS定位.移动通信.导航等多种技术,提供 ...

  6. android自动获取位置,Android中获取当前位置信息

    这篇教程主要介绍了在Android平台上如何使用服务完成定位功能.众所周知,Android设备的当前位置信息,对开发创新性App.解决人们日常生活问题有极大帮助.在Android平台开发定位相关的应用 ...

  7. Android中获取天气,android中获取即刻天气

    android中获取即时天气 先看效果: 需求非常简单,在菜单中加入天气查询的按钮,点击后显示即时天气. 准备工作: 1.下载华为能力SDK:http://imax.vmall.com/nj-camp ...

  8. android apk获取权限,Android apk 获取系统权限的方式

    Android系统中,权限等级分为 ["normal" | "dangerous"| "signature" | "signatu ...

  9. android动态获取输入值,Android实现动态自动匹配输入内容

    Android实现动态自动匹配的控件主要有MultiAutoCompleteTextView和AutoCompleteTextView MultiAutoCompleteTextView: 可支持选择 ...

最新文章

  1. 《Photoshop Lab修色圣典(修订版)》—第1课1.7节言归正传
  2. Ubuntu编译安装VASP
  3. [C++]const 总结
  4. Python工程师求职必知的经典面试题!
  5. 多目标遗传优化算法nsga2求解复杂约束问题【python源码实现,实数编码】
  6. Matlab形态学图像处理:二值图像分割 标记连通区域和重心位置 删除连通区域
  7. 易语言自定义数据类型转c,一步一步跟我学易语言之自定义数据类型
  8. java学习(14):java命名规范
  9. 《Puppet实战手册》——导读
  10. C语言家谱管理程序,C语言实现家谱管理
  11. sql08 访问接口没有oraoledb_如何配置交换机和防火墙以访问 Internet?
  12. android 数据存储之 Shared Preferences
  13. 转载:获取数据库中的所有表 (C#实现)
  14. 获取手机屏幕的宽高 html,js获取手机屏幕宽度、高度
  15. 基于stm32c8t6和mpu6050的三轴云台控制
  16. 构建者模式和抽象工厂模式的结合使用
  17. GCC 优化选项 -O -O0 -O1 -O2 -O3 -Os 简单介绍
  18. 2023年北京邮电大学计算机考研信息汇总
  19. python安装random_如何安装python randon
  20. 《财富》推荐的75本必读书

热门文章

  1. cad文字提取到excel_别怕!CAD表格与EXCEL之间的转化,有它就够了
  2. 【java】docker容器内使用jstack等命令报错 The VM does not support the attach mechanism
  3. 【Elasticsearch】Elasticsearch 基于scoll技术滚动搜索大量数据
  4. 【MySQL】MySQL 如何查看sql语句执行时间和效率
  5. Spark SQL 和 Hive UDF ExceptionInInitializerError getRemoteBlockReaderFromTcp BlockReaderFactory
  6. 60-140-044-使用-DataSink-使用OutputTag进行Side Output(侧输出)
  7. SpringBoot:@ConfigurationProperties注解使用与源码
  8. Kudu : NonRecoverableException: Got out-of-order key column
  9. linux-01-linux中的一些特殊符号
  10. mysql用户已存在怎么回事_mysql – 我的数据库用户存在,但我仍然得到...