华商红利优选灵活配置基金投资价值分析报告毕业设计说明书_第1页
华商红利优选灵活配置基金投资价值分析报告毕业设计说明书_第2页
华商红利优选灵活配置基金投资价值分析报告毕业设计说明书_第3页
华商红利优选灵活配置基金投资价值分析报告毕业设计说明书_第4页
华商红利优选灵活配置基金投资价值分析报告毕业设计说明书_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计说明书题目:基于安卓的公交客户端的设计与实现产品设计工艺设计方案设计√类型:学生姓名:_______________________学号:___________________学院:___________软件学院_____________专业:_____软件技术(软件开发方向)___班级:______________学校指导教师:________企业指导教师:_____________________2016年03 月15日摘要在信息快速发展的今天,人们的出行变得越来越密切,所以在出行的时候借助一些地图类的工具会特别的方便。毕竟在这个时代,几乎人手一个手机,于是就出现了各种各样的出行类的app。但是外面这个多种类繁杂的app到底哪个好用呢?于是就出现了一款叫做伴你随行的公交旅行软件。它的主要功能是拥有实时定位功能,让你不再担心迷路。公交查询功能可以让你的出行不再是个难题,线路规划功能让你随时随地想去哪就去哪。还有一个比较实用性的功能就是周边旅游功能。它可以通过服务器实时获取最新的周边信息,让你的生活充满了无限的乐趣。该系统是基于Android平台的设计,其主要功能公交查询实时地图等是通过调用第三方API来实现的,使用第三方API的好处是第三方平台都已经将其方法分装好了,用户只需直接调用,然后进行一些自己想要的操作与实现的功能就可以了。本次开发使用的工具是AndroidStudio,JAVAJDK。服务器采用第三方框架Bmob,使用Bmob的一大好处就是它已经将网络请求全部封装好了,用户只需要直接调用方法即可得到你想要的数据,这样极大地提高了开发的效率,让开发人员节省了大量的时间和代码量。关键词:公交;地图;旅游;安卓

目录1.绪论 .绪论1.1系统开发与背景来到一个陌生的城市,如果想去一个地方,可以乘坐出租车但是价格相对较贵,最省钱的办法应该是坐公交车,当然你说是走路最省钱的话我无话可说。但是对于一个陌生的城市我们并不了解,那么怎么才能查询公交车信息呢?所以随着移动应用的飞速发展,掌上app成为了人们喜爱的一种方式。所以作为软件开发方面的学子,有必要为城市的公共交通做出一份贡献。1.2社会现状城市公共交通是与人民群众生产生活息息相关的重要基础设施。改革开放以来,我国城市公共交通有了较快发展,但随着经济社会发展和城镇化进程的加快,一些城市交通拥堵、群众出行不便等问题日益突出,严重影响了城市发展和人民群众生活水平的提高。优先发展城市公共交通是提高交通资源利用效率,缓解交通拥堵的重要手段。为解决好城市交通问题,促进城市健康发展,现就优先发展城市公共交通提出以下意见:一、进一步提高认识我国土地资源稀缺,城市人口密集,群众收入水平总体还不高,优先发展公共交通符合城市发展和交通发展的实际,是贯彻落实科学发展观和建设节约型社会的重要举措。各地区和有关部门要进一步提高认识,确立公共交通在城市交通中的优先地位,明确指导思想和目标任务,采取有力措施,加快发展步伐。要通过科学规划和建设,提高线网密度和站点覆盖率,优化运营结构,形成干支协调、结构合理、高效快捷并与城市规模、人口和经济发展相适应的公共交通系统。要进一步放开搞活公共交通行业,完善支持政策,提高运营质量和效率,为群众提供安全可靠、方便周到、经济舒适的公共交通服务。要充分发挥公共交通运量大、价格低廉的优势,引导群众选择公共交通作为主要出行方式。二、充分发挥规划调控作用(一)科学编制公共交通规划。交通规划是城市总体规划的重要组成部分。城市人民政府要在对交通现状、需求和发展前景进行充分调查研究的基础上,以公共交通为核心,通过编制实施城市综合交通体系规划、公共交通专项规划和轨道交通建设规划,科学配置和利用交通资源,建立以公共交通为导向的城市发展和土地配置模式。城市交通规划要与城市总体布局和人口产业分布相协调,确定发展战略目标、任务、有关技术和经济政策;综合考虑各种交通方式、换乘枢纽配置,以及与对外交通的衔接,重点确定公共交通结构、线网分布、场站布局、用地规模、建设计划等。(二)保障规划的编制和组织实施。城市人民政府要大力支持公共交通规划编制工作,将规划编制所需经费纳入财政预算,确保编制任务的完成。要保持规划的严肃性和稳定性,保障规划的组织实施。采取有力措施,切实防止和纠正违反规划、侵占公共交通基础设施及其建设用地的行为,保证优先发展公共交通的需要。(三)建立健全法律法规和标准体系。要从实际出发,借鉴国内外优先发展公共交通的成功经验,从规划、建设、管理等方面,加快建立确保公共交通优先发展的法律法规体系。要健全场站建设、车辆配备与更新、设施装备、服务质量等方面的技术标准体系。进一步强化法律法规和标准的指导作用,促进城市公共交通健康有序发展。1.3研究的内容公交查询系统是一款通过第三方地图SDK获取地图信息的最新的移动应用,本研究的目的在于为广大出行的市民和旅客朋友提供便利的交通,还能为外出游玩的游客推荐一些好玩的值得去的景点,也能达到某种商业目的。研究的主要内容包括以下几个方面:安卓开发包括安卓的UI开发、移动端对于服务端的访问。百度地图API开发百度地图SDK的调用、地图功能的实现、路线规划、公交查询等方面。(3)BmobAPI开发BmobSDK的使用、客户端与Bmob的通讯、添加数据到Bmob服务器、从Bmob服务器获取数据。1.4文章的组织结构文章的组成结构安排如下:第一章绪论介绍了系统开发的背景与意义,对文章的研究内容和组织进行了阐述。第二章主要讨论了系统的需求以及与实现相关的关键技术。第三章详细说明了系统的业务建模与设计。对系统的用户角色以及功能需求进行了详细的介绍。2.系统需求分析与关键技术随着智能手机和3G、4G网络的普及,基于移动端的公交查询系统具备了非常完备的运行平台。从经济、技术以及运营方面来分析,该系统开发成本低廉,容易实现。另外,本系统服务于各个城市的市民、全国各地旅游的游客,核心功能包括公交查询、线路规划等实用性功能。2.1可行性分析2.1.1经济可行性开发该系统所需的相关资料可以通过已存在的相关系统进行调查和采集,所需的软件系统和硬件平台都易于获取,开发成本很低,容易实现,从经济角度来考虑,是可以正常运行的。2.1.2技术可行性技术可行性主要考虑到现有的技术是否能够顺利的完成开发工作,软件与硬件设施是否满足开发需求。本系统采用的J2EE开发体系、AndroidSDK以及百度地图SDK还有Bmob后端云都是开源体系。可以从网上下载相关内容,易于获得,并且网上有大量的案例、开发文档和参考资料。当前的计算机硬件配置也完全满足开发的需求,因此技术上是绝对可行的。2.1.3运营可行性本系统是全方位解决市民出行方面的问题。例如:公交查询、线路规划、周边旅游等一系列出行问题的移动应用软件,非常具有实用价值。随着“绿色出行、低碳生活”理念的深入人心,未来市民们出行的选择会更多的偏向于公共交通,采用低碳环保的出行方式,例如公交车、地铁等交通工具。一旦用户量上来,附着在移动应用上的广告推送费用是非常可观的。2.2功能分析2.2.1客户端功能客户端主要面向的是用户,主要完成实时地图定位、公交查询、线路规划等操作。还可以进行登录操作,这样就可以获取用户信息,进行其他的操作。实时地图定位用户可以在主界面通过点击进入实时地图定位界面,用户可以通过点击页面上的三个按钮进行不同的操作。分别是定位到当前位置、显示交通状况、切换图层显示。图层显示分为平面图和卫星图,可以满足不同用户的不同需求。公交查询同样通过主界面点击进入公交查询页面,用户通过输入城市和公交车名字来获取该趟车的站点信息,早晚班时间等相关信息。给用户提供了便捷的服务同时还考虑了用户的体验感。线路规划线路规划界面也是采用主界面点击事件来进行跳转的,用户通过输入目的地来进行搜索,查询结果包括驾车、步行和骑行三种方式,基本上涵盖了所有用户的需求。2.2.2服务端功能该系统的服务端是使用的目前比较流行的Bmob后端云来实现的。使用Bmob后端云技术的主要优势是简单方便,开发人员只需要下载相应的SDK导入jar包到工程中即可使用。具体操作是Bmob后端云会根据开发人员创建的java对象来自动创建数据库表,然后利用对象进行数据的增删改查操作,方便快捷。开发人员进行数据的管理可以登录Bmob后端云的网站通过登陆之后进入相应的页面进行数据的操作,使用起来非常的方便快捷。2.3关键技术2.3.1百度地图API百度地图API是为开发者免费提供的一套基于百度地图的应用接口,包括JavaScriptAPI、Web服务API、AndroidSDK、iosSDK、定位SDK等多种开发工具与服务,提供基本地图展现、搜索、定位、路线规划、LBS云储存与检索等功能。开发人员只需注册百度账号,通过开发者认证之后,创建一个项目获取百度地图的key即可。百度地图API适用于PC端、移动端、服务端等多种设备,多种操作系统。百度移动版地图SDK,分为Android版与Symbian版,为移动设备地图应用开发提供基本地图、本地搜索、路线规划、定位等服务。若用户使用该套SDK,也需要先申请key。百度地图定位SDK,与百度移动版地图SDK相比,是以更小的体积提供给开发者,帮助开发者完成位置信息获取与应用开发的工具。百度地图目前提供Android和Symbian版本,且开发者是不需要申请key就可使用。百度地图车联网API,是百度地图于2012年6月推出的,为车联网行业定制的一套API。提供地图显示、地址解析、位置描述、本地搜索、周边搜索、驾车路径规划、信息发送、天气、交通事件等多种服务。百度地图LBS云,是百度地图2012年8月底新推出的,也是在百度世界大会2012为开发者提供的”七大武器“之一,即百度地图针对LBS开发者全新推出的服务,借助百度云服务与云计算,通过地图API,实现用户的海量位置数据云存储,同时,也可实现快速云检索。LBS·云将位置数据存储、空间检索、地图展现等任务一站式托管在百度云端,为开发者降低开发成本,有利于开发者提高开发效率。2.3.2BmobSDK对于很多Android/ios/wp个人移动开发者来说,开发一个具有网络功能的应用不是一件容易的事,不仅需要购买/租赁服务器,还必须掌握一门诸如Java/.net/php这类的服务器开发语言,每开发一款移动应用程序,就必须开发维护对应的服务器程序。这一切对于移动开发者来说,都是一个冗长的噩梦。如何让移动开发者从繁琐的机械劳动中解脱出来,将更多精力投入到移动应用程序的创意研发,从而不断提升产品质量呢?Bmob移动应用云储存平台的诞生就很好地解决了以上难题。在Bmob平台上,只需注册一个帐号,成功后申请创建任意多个数据库,获得对应的Key,下载对应版本的SDK并将其嵌入到移动应用中,便可以调用存取API,进行数据的任意操作。有了Bmob,您在5分钟内就可以学会如何开发一个云存储的移动应用软件,给应用软件快速添加一个安全灵活的后台管理系统,方便您浏览终端保存的各种信息。2.3.3AndroidSDKAndroid是谷歌(Google)公司推出的手机开发平台。与iPhone相似,Android采用WebKit浏览器引擎,具备触摸屏、高级图形显示和上网功能,用户能够在手机上查看电子邮件、搜索网址和观看视频节目等,比iPhone等其他手机更强调搜索功能,界面更强大,可以说是一种融入全部Web应用的单一平台。SDK:(SoftwareDevelopmentKit)软件开发工具包一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。安卓系统其吸引力之处在于它的卡放心和服务免费性。Android对第三方软件完全开放,这样使得开发者在开发程序时拥有更大的自由度,同事与其他厂商不同。1.安装下载好AndroidSDK后,开始安装,AndroidSDK采用了Java语言,所以需要先安装JDK5.0及以上版本。直接下载jdk安装文件安装更为方便。AndroidSDK不用安装,下载后,直接解压即可,将下载后的SDK的压缩包解压到适当的位置,就这么简单;SDK安装OK。使用Eclipse进行android应用开发需要给Eclipse装adt插件,这样Eclipse就可以和androidsdk建立连接,可以在Eclipse中启动android模拟器进行程序调试等ADT插件安装这里不再累赘,插件的安装URL为:也可以下载adt的zip包安装安装完插件后,需要做一些简单的配置:(1)在Eclipse中,选择Window>Preference;(2)从左侧的菜单中,选择Android项;(3)设置SDKLocation,点Browse选择SDK的安装根目录;(4)OK,完成。2.发展情况Android项目目前正在从手机运营商、手机厂商、开发者和消费者那里获得大力支持。谷歌移动平台主管安迪·鲁宾(AndyRubin)表示,与软件开发合作伙伴的密切接触正在进行中。从2007年11月开始,谷歌开始向服务提供商、芯片厂商和手机销售商提供Android平台,并组建“开放手机联盟”,其成员超过30家。2014年3月10日早间消息,谷歌(1214.79,-4.82,-0.40%)Android、应用和Chrome高级副总裁桑达尔·皮采(SundarPichai)上周六在SXSW互动大会上宣布,该公司很快就将推出针对可穿戴设备设计的AndroidSDK(软件开发套件)。谷歌将在SDK中向开发者阐述谷歌对该市场运作方式的愿景。从拉斯维加斯国际消费电子展(CES)到巴塞罗那移动世界大会(MWC),可穿戴设备一直都是今年各大科技盛会的重要主题。可穿戴设备中那些体积小巧、性能强大的芯片将给Android带来巨大提升,他对这一前景颇感振奋。这一新的SDK不仅是针对智能手表的。谷歌的职责是为开发者提供系统软件和API(应用编程接口),而具体针对哪种产品进行开发,则取决于开发者和合作伙伴。3.业务建模与设计本系统包括两个部分,面向用户的Android移动端,提供公交查询、实时定位、线路规划等功能;还有就是服务器端,本系统采用的是Bmob后端云技术作为后台数据的提供,给客户端提供数据的添加的查询。3.1系统整体设计系统采用J2EE开发体系、百度地图服务、Bmob后端云服务、主流移动端操作系统Android软件开发技术,充分考虑与其他信息系统的开放互联、多源数据接口、数据之间的关联以及网络环境的开放性基础上,继承地图SDK查询功能和路径规划等相关功能。系统主要是Android客户端来实现所有的操作,给用户提供了公交查询、线路规划、周边旅游推荐等功能。主要面向的是用户,用户无需登录即可进行查询操作,也可以选择登陆添加个人信息。Android客户端采用J2EE平台,使用Bmob后端云技术进行数据的储存与读取,同时作为后台服务器管理用户数据。只要使用AndroidSDK开发平台以及百度地图API和Bmob后端云技术。3.2业务用例建模业务建模(BusinessModeling)是以软件模型方式描述企业管理和业务所涉及的对象和要素、以及它们的属性、行为和彼此关系,业务建模强调以体系的方式来理解、设计和构架企业信息系统。3.2.1角色分析本系统中所涉及的角色主要是用户,即使用该系统的人,他们可以利用移动客户端进行公交系统查询、线路规划服务、实时定位功能和周边旅游服务。3.2.2客户端用例分析客户端主要具有的功能有公交查询,实时地图,路径规划,周边旅游和登录注册功能,具体用例如图3.1所示。

图3.1客户端用例分析图3.3业务流程建模3.3.1周边旅游信息更新周边旅游服务是根据你不同的地理位置向用户实时推送一些附近的值得去的地方。用户需要手动修改自己所处的城市位置来更新显示列表。因为每次都去服务器获取数据的话,对于内存的消耗是很大的,服务器的压力也会随之变大。其更新的互动见图3.2所示。图3.2周边旅游用例分析图3.3.2地图功能查询地图功能的查询需要打开GPS进行精准的获取当前位置。地图的查询是通过请求百度地图的服务器返回数据显示。详情见图3.3所示。图3.3地图查询功能用例分析图3.4系统数据库设计基于安卓的公交查询系统主要是通过调用第三方API进行数据的查询,所以该功能不需要实现数据库的创建,但是在周边旅游功能中的数据来自于服务器。为了减轻服务端的压力,我们会将用户上一次访问的数据进行缓存到本地,采用SQLite本地数据库来缓存。这样用户在新打开程序的情况下不至于每次都采用网络请求,还有在用户在网络连接异常的时候可以显示上一次的数据。3.4.1SQLite本地数据库缓存的创建以下列出周边旅游表的数据库创建代码。createtabletravel( travel_titlevarchar(40), travel_contentvarchar(200), travel_authorvarchar(20), travel_datedate, travel_picvarchar(100),--存储图片路径 travel_content_picvarchar(100)--存储图片路径)以下列出公告信息表的数据库创建代码。createtablenotice( notic_titlevarchar(40), notic_contentvarchar(200), notic_authorvarchar(20), notic_datedate, notic_picvarchar(100),--存储图片路径 notic_content_picvarchar(100)--存储图片路径)4.系统实现及应用4.1客户端4.1.1客户端主要功能Android客户端中的实时地图功能,用户可以通过右上方的三个按钮来进行相应的操作,从上到下分别为:实时定位、切换卫星/平面图和显示或关闭交通状况。具体情况如图4.1所示。图4.1实时地图功能图Android客户端中的公交查询功能的具体操作是在屏幕上方第一个输入框输入城市名,第二个输入框输入相应的公交路线点击查询按钮即可在地图上显示相应的具体的公交线路图,用户还可以点击线路按钮跳转页面查看该路公交车所有的站点名称,详情如图4.2所示。图4.2公交查询功能图Android客户端中的地图线路规划功能:用户通过在屏幕上方的三个输入框内分别输入城市名、起点名和终点名即可。然后在输入框下方四个按钮选择需要的路径规划类型即可显示对应的线路详情,具体操作显示如图4.3所示。图4.3线路规划功能截图4.1.2调用百度地图SDK主要代码通过调用第三方百度地图SDK来显示地图和进行相应的地图操作。主要是通过清单文件注册添加百度地图开发平台提供的key来进行验证,代码如下:<meta-data

android:name="com.baidu.lbsapi.API_KEY"

android:value="UWb4dz9lC8rIaSiG8Ii0tslUh5qKgfQB"/>开启定位服务通过在清单文件中添加服务来实现,代码如下:<service

android:name="com.baidu.location.f"

android:enabled="true"

android:process=":remote">

</service>下面是实时地图界面的代码:publicclassMapActivityextendsAppCompatActivity{

BaiduMapbaiduMap;

MapViewmapView;

MyViewmv;

ImageViewshow,close;

//定位

privateLocationClientlocationClient=null;

privatestaticfinalintUPDATE_TIME=5000;

//privatestaticintLOCATION_COUTNS=0;

privatedoublelat;

privatedoublelng;

@Override

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

SDKInitializer.initialize(getApplicationContext());//初始化

setContentView(R.layout.activity_map);

//初始化iamgeView组件

show=(ImageView)findViewById(R.id.show);

close=(ImageView)findViewById(R.id.close);

//自定义actionBar

mv=(MyView)findViewById(R.id.mv);

mv.setTitle("实时地图");

mv.isHiddenEdit(true);

mv.setBackListener(newView.OnClickListener(){

@Override

publicvoidonClick(Viewv){

MapActivity.this.finish();

}

});

//得到地图

mapView=(MapView)findViewById(R.id.mapView);

baiduMap=mapView.getMap();//得到地图对象

baiduMap.setMapType(BaiduMap.MAP_TYPE_NORMAL);//平面图

//定位

locationClient=newLocationClient(this);

//设置定位条件

LocationClientOptionoption=newLocationClientOption();

option.setOpenGps(true);//是否打开GPS

option.setCoorType("gcj02");//设置返回值的坐标类型。

option.setPriority(LocationClientOption.NetWorkFirst);//设置定位优先级

option.setProdName("Bus");//设置产品线名称。强烈建议您使用自定义的产品线名称,方便我们以后为您提供更高效准确的定位服务。

option.setScanSpan(UPDATE_TIME);//设置定时定位的时间间隔。单位毫秒

locationClient.setLocOption(option);

//注册位置监听器

locationClient.registerLocationListener(newBDLocationListener(){

@Override

publicvoidonReceiveLocation(BDLocationlocation){

//TODOAuto-generatedmethodstub

if(location==null){

return;

}

lat=location.getLatitude();

lng=location.getLongitude();

System.out.println(lat+"、"+lng);

}

});

}

publicvoidloc(Viewview){

//定位到当前位置

if(locationClient==null){

return;

}

if(locationClient.isStarted()){

locationClient.stop();

}else{

locationClient.start();

baiduMap.setMyLocationEnabled(true);//开启定位

MyLocationDatalocationData=newMyLocationData.Builder()

.latitude(30.770069)

.longitude(114.210569)

.build();

baiduMap.setMyLocationData(locationData);

baiduMap.setMyLocationConfigeration(

newMyLocationConfiguration(

MyLocationConfiguration.LocationMode.FOLLOWING,true,null));

MapStatusUpdatemsu1=MapStatusUpdateFactory.zoomTo(17);

baiduMap.setMapStatus(msu1);//设置地图等级为15级

LatLnglal=newLatLng(30.770069,114.210569);

MapStatusUpdatemsu2=MapStatusUpdateFactory.newLatLng(lal);

baiduMap.animateMapStatus(msu2);//动画效果

locationClient.requestLocation();

}

}

publicvoidchange(Viewview){

//更换显示模式

if(baiduMap.getMapType()==BaiduMap.MAP_TYPE_NORMAL){

baiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE);//设置为卫星图

}elseif(baiduMap.getMapType()==BaiduMap.MAP_TYPE_SATELLITE){

baiduMap.setMapType(BaiduMap.MAP_TYPE_NORMAL);

}

}

publicvoidshow_traffic(Viewview){

//显示交通状况

baiduMap.setTrafficEnabled(true);//显示交通状况

show.setVisibility(View.INVISIBLE);

close.setVisibility(View.VISIBLE);

}

publicvoidclose_traffic(Viewview){

//显示交通状况

baiduMap.setTrafficEnabled(false);//显示交通状况

close.setVisibility(View.INVISIBLE);

show.setVisibility(View.VISIBLE);

}

@Override

protectedvoidonResume(){

super.onResume();

mapView.onResume();

}

@Override

protectedvoidonDestroy(){

super.onDestroy();

if(locationClient!=null&&locationClient.isStarted()){

locationClient.stop();

locationClient=null;

}

}

}4.1.3通过类管理器来实现双击返回键退出整个程序将方法封装好了之后,只需在每个activity中调用ActivityManager.getInstance().addActivity();方法即可,然后在退出程序界面调用ActivityManager.getInstance().exit();即可实现该功能。具体代码如下:publicclassActivityManager{

privateList<Activity>activityList=newLinkedList<Activity>();

privatestaticActivityManagerinstance;

publicActivityManager(){

//

}

//单例模式中获取唯一的MyApplication实例

publicstaticActivityManagergetInstance(){

if(null==instance){

instance=newActivityManager();

}

returninstance;

}

//将activity添加到容器

publicvoidaddActivity(Activityactivity){

activityList.add(activity);

}

//遍历所有activity并finish

publicvoidexit(){

for(Activityactivity:activityList){

activity.finish();

}

System.exit(0);

}

}4.2服务端为了降低开发成本,本系统采用第三方Bmob作为服务器来作为数据的提供源,使用起来简单方便、快捷高效,不用考虑服务器的成本。4.2.1调用第三方BmobAPI使用BmobAPI作为服务器主要是通过导入jar包到工程,然后调用其方法进行数据的增删改查即可。具体操作代码如下:publicclassRimTravelActivityextendsActivity{

MyViewmv;

ListViewlv_travel;

TravelAdapteradapter;

ArrayList<HashMap<String,Object>>datas;

@Override

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_travel);

mv=(MyView)findViewById(R.id.mv);

mv.setTitle("周边旅游");

mv.isHiddenEdit(true);

View.OnClickListenerlistener=newView.OnClickListener(){

@Override

publicvoidonClick(Viewv){

RimTravelActivity.this.finish();

}

};

mv.setBackListener(listener);

datas=newArrayList<>();

initDatas();

lv_travel=(ListView)findViewById(R.id.lv_travel);

adapter=newTravelAdapter(this,datas);

lv_travel.setAdapter(adapter);

lv_travel.setOnItemClickListener(newAdapterView.OnItemClickListener(){

@Override

publicvoidonItemClick(AdapterView<?>parent,Viewview,intposition,longid){

//通过意图跳转传递参数

Intentit=newIntent(RimTravelActivity.this,TravelDetailsActivity.class);

it.putExtra("title",datas.get(position).get("title").toString());

it.putExtra("content",datas.get(position).get("content").toString());

it.putExtra("date",datas.get(position).get("date").toString());

startActivity(it);

}

});

}

//加载数据>从网络获取

publicvoidinitDatas(){

BmobQuery<TravelInfo>bmobQuery=newBmobQuery<TravelInfo>();

bmobQuery.findObjects(this,newFindListener<TravelInfo>(){

@Override

publicvoidonSuccess(List<TravelInfo>list){

//查询成功

for(TravelInfotravelInfo:list){

//迭代输出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论