- 博客(42)
- 资源 (37)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android开发丶商城购物车模块(含demo超详细)
这篇博文详细描述了从零开始实现购物车,使用的控件很简单,就一个ExpandableListView,避免了嵌套,操作更简单方便。先看看效果吧。怎么样,很棒吧,如图所示,主要有店铺名称,商品价格,数量,图片,底部有总价格和结算(删除)按钮。1.那我们先把常用的控件添加依赖,这里主要就是用一个第三方的刷新控件smartRefreshLayout。刷新控件:com.scwang.sm...
2019-06-27 11:15:14
2472
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android开发丶底部导航栏
在主流app中,应用的主界面都是底部含有多个标签的导航栏,点击可以切换到相应的界面,如图:接下来将描述下其实现过程。1.首先是分析界面,底部导航栏我们可以用一个占满屏幕宽度、包裹着数个标签TextView、方向为横向horizontal的线性布局LinearLayout。上方则是一个占满剩余空间的FrameLayout。activity_main.xml<?xml ...
2019-06-24 09:30:21
21584
37
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android开发丶集成微信原生登录
好久没写博客了,大概是与ReactNative大战半月已经有点疲惫了,说起集成微信三方登录,还记得上次实现功能还是刚参加工作时,用Mob的ShareSDK来集成实现的,该平台集成了数个主流平台的分享和登录功能,本来想继续抱着Mob大佬的大腿,后来觉得本项目也只集成一个微信登录而已,相比MobShareSDK,不需要再去申请额外的账号,所以最终还是决定入坑原生来将其实现,查阅了官方文档和相关资料,最...
2019-06-24 09:27:25
26786
78
原创 Android开发丶实现一个可以输入可以下拉选择的EditText输入框
接到个需求,登录界面需要做一个显示历史登录账号的功能,即用户名输入框即可以手动输入,也可以通过展示的下拉框从而选择以往登录的账号,呃,有点拗口?效果大概就是这样的如图所示,我们点击文本输入框时,就可以显示一个底部列表,这块我们也可以根据项目实际需求把列表放在一个dialog弹窗里,此时既可以手动输入也可以点击列表,点击列表后,列表会自动消失,当下次输入时,它又会显示出来。下面说下实现步骤:1.首先在xml文件里,放一个EditText和listview。activity_main.xml
2020-08-06 11:18:46
4095
6
原创 Android开发丶调用百度高德腾讯等第三方地图进行导航
地图导航是一种很常见的功能了,一般我们都是通过集成第三方地图app,诸如百度地图、高德地图和腾讯地图来实现,相应的开放平台也提供了SDK自带的方法实现,不过这种方法需要去下载SDK,申请appkey等一系列比较繁琐的操作,相比这种方法,我们可以用更为便捷的URL调起地图app,仅需几行代码即可。首先看下效果图下面说下实现步骤1.我们给视图xml文件放上三个按钮,看着直观些...
2020-04-14 14:15:42
1489
原创 Android开发丶HoneyWell设备的二维码扫描实现
前一段时间做了个项目,功能是要求在honeyWell设备上实现二维码扫描的功能,那么有人会问了,这设备是干嘛的,和Android有什么关系,其实这种设备也搭载了Android系统,因此我们可以把Android app安装到该设备上,并且该设备会有专用的扫描枪,主要用于仓库物流相关的事宜,无奈网上相关的资料实在太少了,官网打不开,文档是英文,好在经过一番摸索,最后找到了能用的资源SDK,话不多说,步...
2020-03-17 17:45:47
3555
10
原创 Android开发丶万能适配器BaseQuickAdapter和刷新控件SmartRefreshLayout搭配Recyclerview实现列表界面
几乎每个app都离不开列表界面,实现的方式也是各种五花八门,随着技术的日新月异,各种相关的控件封装的也越来越彻底,功能越来越强大,本文则详细记录了时下最火的万能适配器BaseQuickAdapter、刷新控件SmartRefreshLayout搭配Recyclerview实现列表的步骤。国际惯例,先看效果图:1.首先我们引入各类依赖打开build.gradle//recycl...
2020-03-09 10:34:38
2681
原创 Android开发丶调用百度地图进行导航
开发过程中,遇到这样一个需求,指定起始和终点站,然后从app内部调起百度地图进行导航,网上相关的方法很多,但是很多都不太好使,官方的文档记录也不是很详细,经过一番折腾踩了一些坑,总算是将其实现了,特此做下记录!步骤如下:1.首先是新建一个AndroidStudio项目,然后去百度地图开放者平台注册项目,获取到ak值。2.在百度地图开放者平台下载sdk,注意,常用的唤醒百度地图来进行导航...
2020-01-08 14:50:19
5495
5
原创 Android开发丶从相册中选择照片,调用摄像头拍照以及录制小视频
在日常开发过程中,这三种功能是再常见不过了,网上相关的文档也一大堆,不过未免让人眼花撩乱,因此记录做下整理!(PS:目前相册选择照片和调用摄像头拍照已经实现了压缩,录制小视频暂未实现,哪位大佬有好的建议,请指教!)实现步骤:1.新建一个AndroidStudio项目。绘制MainActivity的xml文件,这里为了直观,我们放上几个按钮和图片就行。main_activity....
2020-01-07 15:42:54
2522
1
原创 Android开发丶基于高德地图实现定位、搜索定位、绘制圆圈自定义图标及改变圆圈半径等功能
前一段时间接了个需求,进入一个地图界面,可以获取当前位置信息,通过输入位置信息获取位置,绘制圆圈并可以实时改变圆圈半径等功能,地图SDK我们使用的是高德地图,仔细阅读了开发文档,发现这些需求都可以通过SDK自带的方法来实现,在此做一下整理。下面说下实现流程1.打开AndroidStudio新建一个测试项目,新建一个签名文件testkeystore.keystore。步骤如下:点击B...
2019-11-06 10:15:45
7594
1
原创 Android开发丶列表底部列表弹窗Dialog同时包含选择和自适应高度功能
前一段时间接到一个需求,点击弹出一个底部弹窗,弹窗的内容以列表的方式来呈现,同时包含选择条目和自适应以及固定高度,需求不难,就是一些细节的东西绕了一些弯路,现在做下汇总。国际惯例,先看下效果图。下面说下实现方法。1.首先新建一个dialog的style。<!--底部弹窗--><style name="DialogStyle" parent="android...
2019-10-31 16:26:02
2803
原创 Android开发丶基于MPChart的饼状图统计实现
经过没日没夜的加班加点,项目终于如期上线了,在下个迭代即将来临蹂躏之余,将本次迭代遇到的一些问题进行汇总以便学习。遇到一个需求,将统计数据以饼状图进行统计,这块我们引用了一个第三方类库,官方地址如下:https://github.com/PhilJay/MPAndroidChart该类库可以提供丰富的各类图表实现,如折线,饼状,柱状等,这里我们看下饼状图的效果:效果还行吧,左边...
2019-10-28 11:47:48
1094
原创 Android开发丶openinstall的集成和使用(推广二维码)
在项目开发过程中,负责的推广二维码模块需要加入openinstall三方框架,该框架可以在推广二维码中搭建一层上下级关系,加上一定的积分奖励,极大地提高了用户的推广热情,并且不同于以往常规的手动填写邀请码,该框架可以实现邀请码免填、携带参数等功能,以下对该框架的使用心得和步骤做下简单的归纳和整理。1.首先登录openinstall官方平台链接:https://www.openinstall...
2019-06-27 11:16:47
7286
1
原创 Android开发丶使用MobShareSDK完成第三方分享
第三方分享已经是项目中司空见惯的东西了,可以将app的内容分享到国内的各大主流平台,比如QQ、微信、新浪微博等,站在开发者的角度,既有各大官方开放平台推出的自家分享SDK,也有友盟、MobShareSDK等三方平台提供的整合框架,后者是将各主流平台的分享SDK进行整合并深度封装后呈现给用户,略去了用户逐步下载、调试、整合的烦恼,凭借着简洁、易操作、稳定的特性,成为了更多开发者的首选。这篇博文主...
2019-06-27 11:16:28
1460
原创 Android开发丶渐变启动页和带有指示器的引导页
引导页是项目中很常见的东西了,在用户下载app首次打开后,会进入引导界面,通常都是三四张图片说明,简单介绍下app的功能和使用方法之类,最后一张有着“进入应用”的按钮,点击即可进入主页,之后打开app则不会再次进入启动页,话不多说,以下做个归纳。效果图:实现步骤:1.首先我们做个有渐变动画的启动页面SplashActivity在onCreate里设置核心方法setAlphaAn...
2019-06-27 11:16:20
1107
原创 Android开发丶双击退出应用
双击退出应用在项目中很常见了,下面简单做个归纳//监听按下某个按键后抬起的方法@Overridepublic boolean onKeyUp(int keyCode, KeyEvent event) { //当按下的是后退键并且是抬起的动作 if (keyCode== KeyEvent.KEYCODE_BACK&& event.getAction()== ...
2019-06-27 11:16:10
380
原创 Android开发丶使用RxJava来完成倒计时功能
RxJava是在2016年左右火起来的,现已成为各大项目平台必用的框架,通常与MVP模式、Retrofit网络框架组合起来,为开发者提供更为强大,稳定的开发基础框架,还记得熟悉mvc开发的我第一次见到该框架时,初识繁琐,后知其妙,接下来简单做下有关倒计时功能的整理,一般在注册模块中,给新手机号发送验证码会用得到,本文仅提供倒计时的方法,相关请求验证码下发接口的功能需要大家自己去请求集成。效果图...
2019-06-27 11:15:58
1651
原创 Android开发丶二级列表的联动功能实现
通常我们在外卖或者商城app会看到竖排二级列表的界面,点击左边列表的分类菜单,右边列表则会显示对应分类下的列表内容,这篇博文将对该功能的实现归纳和整理。首先看下效果图:在第一个页面选择最多三个标签,将书局塞到数组里返回上一个页面,然后就可以按照需求完成一系列操作。下面说下实现步骤:1.首先分析界面,是两个等比宽的列表,推荐使用recyclerview,右上角用来记录选择的标签个...
2019-06-27 11:15:46
9265
原创 Android开发丶使用RxJava来完成自动轮播图
轮播图也是一个很常见的功能了,通常都置于App首页,每隔几秒就会切换下一张图片,等轮播完毕,则又会从第一张周而复始。这篇博文对该功能的实现做下归纳和整理。首先看下效果图接下来看一下实现步骤1.分析下界面,由可滑动的viewpager,标题textview,图片ImageView,右下角的小圆点(由LinearLayout线性布局包裹),包裹文字和圆点布局的透明黑色的布局。因此我们先...
2019-06-27 11:15:34
410
原创 Android开发丶带有选择功能的列表功能的实现
一般在开发过程中,我们会遇到这种需求,对列表的某些条目进行点选,然后进行下一步操作,一般列表控件都没该功能,这里就需要我们去自定义了,本篇博文将进行归纳和总结。先看下效果图下面说下实现步骤1.按照国际惯例,分析界面,画布局核心控件就是这个列表了,这里我们当然是用RecyclerView啦<?xml version="1.0" encoding="utf-8"?&...
2019-06-24 09:30:54
3862
5
原创 Android开发丶带有类型的列表功能实现
标题乍看起来有点不知所云,话不多说,效果图附上每个大标签分为数个小标签,顶部有个类型title,点击每个小item会触发相应位置的点击事件,欧了,流程走起来~~~1.首先当然还是画UI啦,分析界面,只是一个列表,这里我们用RecyclerView。activity_main.xml<?xml version="1.0" encoding="utf-8"?><...
2019-06-24 09:30:37
3058
原创 Android开发丶一步步教你实现okhttp带进度的列表下载文件功能
大家好,我又回来了!标题好像又起的不知所云,但是貌似也想不起更好的标题,看看效果图现在有个文件列表,每个列表标签都有一个下载的按钮,点击以下载对应的文件,如果已下载则显示“已下载”,反之显示“点击下载”。首先我们使用okhttp框架下载文件,并且使用progressDialog显示下载进度,至于界面主列表,则是高端大气上档次的RecyclerView,啥?你还告诉我你用listVi...
2019-06-24 09:30:05
4817
4
原创 Android开发丶基于mupdf在Android设备上横竖屏查阅pdf文件
有个需要下载pdf文件后查看的功能,而且要完成首尾页跳转,横竖屏查看,恢复屏幕缩放比例的功能,查阅了相关的资料,发现相对比较缺失,大概是市面上相关需求不多,不过既然我们接到了这个需求,就要把它实现。主流有以下几种框架1.JoanZapata/android-pdfview2.barteksc/AndroidPdfViewer3.MuPDF本人将以上多种框架都进行整合测试,发现了...
2019-06-24 09:28:44
1933
原创 Android开发丶自定义带EditText的AlertDialog
现在有个功能点,点击某个按钮需要弹出一个带有EditText的AlertDialog弹窗,实现起来并不难,简单记录下方便以后使用。国际惯例,效果图走起:下面是实现步骤1.首先画自定义的布局,我们给里面放了四个TextView、一个EditText。dialog_choosepage.xml<?xml version="1.0" encoding="utf-8"?&g...
2019-06-24 09:27:52
4294
4
原创 Android开发丶自定义Dialog并设置宽高适应子布局XML
Dialog是我们做项目很常见的一项功能点了,一般的文字弹窗原生的dialog就可以帮我们实现,然而在实际开发过程中,因为弹窗布局较为复杂,充斥着各种控件,这时候原生的Dialog显然就不能满足我们的需求了,所以我们要自定义修改一番,近期正好做了些这方面的东西,也遇到了一些坑,特此整理出来!万年不变的国际惯例——上效果图好像丑了点,哈哈。。问题不大。简单分析下界面,共有1个Text...
2019-06-24 09:26:32
3641
2
原创 Android开发丶集成微信原生分享并于分享网页时加载网络缩略图
微信分享也是一项很常用的功能了,以往都是用友盟或者mobShareSDK框架来实现的,这两者在微信官方的sdk基础上封装的很好,并且加入了一些很实用性的功能,不过这次因为只有微信平台的分享,而且微信登录也是基于微信官方的原生SDK的,所以我们就不用再去大费周章地使用友盟和mobsharesdk了,而且也可以学习些新的东西,经过一番折腾调试,成功地把分享集成成功了,期间也遇到了一些坑,而且微信官方的...
2019-06-24 09:26:15
3985
5
原创 Android开发丶将网络获取到的列表数据重新排序
现在有个功能点,需要把一个商城项目的菜单栏重新排序需求的顺序是这样的(暂时没图,用文字描述一下)实现方法:1.首先在代码中可以确定这是网络请求到的列表数据,然后以Gridview的方式呈现了,一般涉及到网络列表数据,都有一个相对应的字段bean,我们先打开它。2.可以看到频道的一些字段,比如id,name,list之类的3.这里我们新建一个sortFlag的int...
2019-06-24 09:25:29
618
原创 Android开发丶谷歌官方刷新控件SwipeRefreshLayout下拉刷新的实现和上拉加载的拓展
刷新控件我们用的很多了,常见的有第三方刷新库PullToRefreshLayout和谷歌官方推出的SwipeRefreshLayout刷新库,自从后者推出后,使用频率越来越高,毕竟是亲儿子嘛,在稳定性,更新性上有着独天得厚的优势,然而可惜的是,后者只包括了下拉刷新,在有些需要上拉加载的地方怎么办呢?因此,这篇博文主要就围绕着该控件的使用方法和上拉加载的拓展而展开。我们先看下效果:第一次上传gif动...
2018-03-06 16:54:42
774
原创 Android开发丶ExpandableListView嵌套GridView的实现
开发过程中有个需求,要做出一个折叠列表布局,每个列表条目下还有可以三图一行的列表,分析界面后,发现这个可以用现有的控件ExpanadableListView和GridView组合嵌套来实现,即ExpandableListView来战展示标题数据,gridview来展示内部图片,照着这个思路,很快就实现出来了,这里做一下整理归纳。 我们先看一下实际效果没展开前,初始状态,点...
2018-03-01 17:12:50
1364
原创 Android开发丶历史界面时光轴的实现
一般在资讯类app的项目需求中,我们会经常面临着历史界面,呈现浏览记录等等,一般在每条资讯上面都会出现一个时间,当我看到时光轴这种界面,瞬间被吸引到了,觉得这么炫酷的效果,是不是用的什么开源库或者控件,于是在网上搜索了大量资料,但是发现却比较匮乏,也许是我搜索的方式不对吧哈哈~~后来开发技能越加熟练后,仔细分析了该界面,发现其实不是什么太复杂的东西,手动就可以自己画一个,决定整理了下发出来。我们先...
2018-02-26 16:43:50
910
原创 Android开发丶一个较为完善的搜索界面,包含了热门标签,清除输入框,搜索结果列表等功能
在资讯展示类app中,我们或多或少不能避免搜索这个功能模块,本文在常见的搜索功能基础上增加了热门标签,清除输入框等丰富用户体验的功能。我们看下效果。初始界面:点击任意一个热门标签的效果:点击文本输入框清除按钮的效果:下面详细讲下实现步骤:1.搭建布局之前,我们先写两个自定义view,一个是带清空按钮的文本输入框ClearEditTextView,一个是标签流布局LableLayoutView。Cl...
2018-02-24 16:16:43
1071
原创 Android开发丶一个仿IOS的底部弹窗
在项目开发过程中,需要在个人中心模块点击用户头像使底部弹出弹窗,显示相机获取、相册获取等选项,这里本来想使用Android Material Design风格的界面,然而UI小姐姐不管三七二十一,要求界面风格和IOS保持一致,我擦。。。这是歧视我们Android吗,我们Android现在界面也很风骚炫酷的好吗?但是吐槽归吐槽,既然这方案也得到BOSS首肯了,那么就乖乖按照人家要求来吧,然而因为An...
2018-02-22 15:04:14
2008
原创 Android开发丶使用DialogFragment完成炫酷的弹窗登录界面并完成DialogFragment与宿主Fragment的通信
在上篇文档中,我主要记录了通过接口回调实现了DialogFragment与宿主Acitivity的通信,但是在实际开发过程中,登录界面往往是从“我的”这个Fragment打开的,这里发现接口回调不是很好用,查阅了很多文档,都没有很好的解决办法,因此,怎样把输入的账户名和密码由DialogFragment传递给宿主Fragment以便完成进一步的网络请求等操作就成了我们亟待解决的问题,这里我们通过s...
2018-02-09 15:11:29
18924
原创 Android开发丶使用DialogFragment实现炫酷的登录界面并实现DialogFragment与宿主Activity的通信
项目终于赶在2月8日收工了,单抗的这一个月尝试了很多新鲜的技术,并且取得了很不错的效果,现在距离放假还有几天,空闲之余决定做一下技术归纳。本文主要围绕着Dialogfragment这个控件在登录界面上的应用来展开描述,这个控件是谷歌官方推荐用来替代传统Dialog控件的,因其有着和fragment相似的生命周期,因此更好管理。一般来说,登录界面一般都是一个单独的Activity,然后通过inten...
2018-02-08 16:31:39
2356
原创 Android开发丶解决应用不能在Android7.0+设备上不能安装的问题
因为之前一直都是用Andorid6.0和Android5.0做开发的,今天偶然发现试图把应用安装到Android7.0+以上的设备,发现会出现应用打不开的问题,如图:查看了AndroidStudio的logcat日志,发现报错:经过查找资料,发现这是Android7.0的权限问题MODE_WORLD_READABLE文件权限存在安全隐患,所以google先把它编辑为过时
2017-09-06 17:48:12
4779
原创 Android开发丶MaterialDesign实战のCardViewRecyclerView实现炫酷列表页
在RecyclerView的基础上,使用MaterialDesign控件CardView实现炫酷的列表栏实现效果: 实现步骤1.在build.gradle里面添加依赖recyclerViewcardView2.在主界面的XML文件中设置RecyclerView控件android:id= “@+id/main_rv”android:width= “match_
2017-09-04 11:50:07
867
原创 Android开发丶MaterialDesign实战のDrawerLayout
DrawerLayout是一种Material Design风格的侧滑菜单,v4包里提供了该控件,可以轻松实现侧滑效果,通常与Toolbar和Navigation控件搭配。实现效果: 实现步骤:1.在XML文件中,把最外层布局改成DrawerLayout******************************************2.编辑弹
2017-09-01 16:08:18
231
原创 Android开发丶MaterialDesign实战のToolbar
1.先添加design的依赖2.在AppTheme中改为NoActionBar3.在xml文件里添加Toolbar控件注意两个配置android:theme=”@style/ThemeOverlay.AppCompat.Dark.ActionBar“app:Theme="@style/ThemeOverlay.AppCompat.Light"4.在MainActivity中
2017-09-01 10:16:53
223
转载 Android开发丶使用懒加载修复tablayout+viewpager+fragment的预加载
何为预加载:因为该处使用到了Fragment+Viewpager+Tablayout的组合实现分类,因为viewpager V4包的机制,导致了在加载一个fragment时候,默认会加载它左右两边的两个fragment,源码显示是通过viewpager.setoffscreenpagelimit(1)来控制预加载的fragment的数量,该处默认最小值就是1,设为0并无效果,因此从源码端取消预
2017-05-09 11:52:54
497
转载 Android开发丶Caused by: java.lang.IllegalArgumentException: You need to use a Theme.AppCompat theme (or
最近在项目中添加了tablayout控件,打开该页面就会崩溃,提示如下:顾名思义,我们需要给目标Activity配置一个design的theme属性打开AndroidManifest清单文件,定位到目标Activity添加themeandroid:theme="@style/Theme.AppCompat.Light.NoActionBar"这样就可以正常运行了!
2017-05-08 11:57:48
2633
RememberUserTest08062.zip
2020-08-06
Android开发丶集成微信官方原生登录
2018-11-12
Android开发丶二级列表的联动功能实现
2018-09-07
Android开发丶谷歌官方刷新控件SwipeRefreshLayout下拉刷新的实现和上拉加载的拓展
2018-03-06
Android开发丶ExpandableListView嵌套GridView的实现
2018-03-01
Android开发丶一个较为完善的搜索界面,包含了热门标签,清除输入框,搜索结果列表等功能
2018-02-24
Android开发丶使用DialogFragment完成炫酷的弹窗登录界面并完成DialogFragment与宿主Fragment的通信
2018-02-09
Android开发丶使用DialogFragment实现炫酷的登录界面并完成DialogFragment与宿主Acitivity的通信
2018-02-08
Android开发丶GridView实现可预览的简易图片浏览器
2018-01-08
Android开发丶ExpandableListView实现可展开列表
2018-01-08
Android开发丶GridLayoutの一个简易精美的计算器界面
2018-01-04
Android开发丶自定义viewの一个触摸移动的小球
2018-01-04
Android开发丶一个简易的图片浏览器
2018-01-04
Android开发丶MaterialDesign实战のCardViewRecyclerView实现炫酷列表页
2017-09-04
Android开发丶MaterialDesign实战のDrawerlayout
2017-09-01
Android开发丶MaterialDesign实战のToolbar
2017-09-01
HoneyWellTest0317.zip
2020-03-17
BaseQuickAdapterTest0306.zip
2020-03-09
Android开发丶调用百度地图进行导航
2020-01-08
Android开发丶从相册中选择照片,调用摄像头拍照以及录制小视频
2020-01-07
MapTest1104.zip
2019-11-06
Android开发丶包含选择功能以及自适应及固定高度设置的列表底部弹窗的实现
2019-10-31
Android开发丶基于MPChart的饼状图统计实现
2019-10-28
Android开发丶教你使用ExpandableListView一步步从零实现商城购物车(含demo超详细)
2019-02-21
Android开发丶集成微信原生分享
2018-11-12
Android开发丶自定义Dialog并设置宽高适应子布局XML
2018-11-08
Android开发丶自定义带EditText的AlertDialog
2018-10-15
Android开发丶基于mupdf在Android设备上横竖屏查阅pdf文件
2018-10-11
Android开发丶一步步教你实现okhttp带进度的列表下载文件功能
2018-10-11
Android开发丶使用RxJava来完成自动轮播图
2018-09-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人