Welcome 微信登录

首页 / 移动开发 / Android

Android路由框架Router分析详解

Android路由框架Router分析详解

什么是路由?说简单点就是映射页面跳转关系的,当然它也包含跳转相关的一切功能。路由框架的意义Android系统已经给我们提供了api来做页面跳转,比如startActivity,为什么还需要路由框架呢?我们来简单分析下路由框架存在的意义:在一些复杂的业务场景下(比如电商),灵活性比较强,很多功能都是运营人员动态配置的,比如下发一个活动页面,我们事先并不知道具体的目标页面,但如果事先做了约定,提前做好页面映射,便可以自由配置。随着业务量的增长,客户端必然随之膨...
Android 仿微信聊天时间格式化显示功能

Android 仿微信聊天时间格式化显示功能

本文给大家分享android仿微信聊天时间格式化显示功能。在同一年的显示规则:如果是当天显示格式为 HH:mm 例:14:45如果是昨天,显示格式为 昨天 HH:mm 例:昨天 13:12如果是在同一周 显示格式为 周一 HH:mm 例:周一14:05如果不是同一周则显示格式为 M月d日 早上或者其它 HH:mm 例: 2月5日 早上10:10不在同一年的显示规则:显示格式为 yyyy年M月d日 晚上或者其它 HH:mm 例:2016年2月5日 晚上18:...
Android中实现滑动的七种方式总结

Android中实现滑动的七种方式总结

在Android中想要实现实现滑动有很多方法,这篇博客将提供一些实现滑动的思路,希望可以帮助到有需要的人。一、Android坐标体系在讲解滑动之前,我们有必要简单提一下Android的坐标体系,因为滑动的实质就是坐标的不断改变,所以我们先来了解一下Android坐标系和视图坐标系两个概念。直接放上两张图片吧,一目了然。Android坐标系视图坐标系从上面的两张图可以看出,Android坐标系的坐标原点位于屏幕的左上角,而视图坐标系的原点位于父视图的左上角,...
Android ContentProvider查看/读取手机联系人实例

Android ContentProvider查看/读取手机联系人实例

看到某些App里面有读取联系人的功能,然后自己尝试了一下。发现这个挺简单的。然后自己就做了一个demo给大家,希望借这个demo可以让大家学习一下怎么实现读取手机联系人。这里我用了两种方法去读取:第一张图片是跳转到系统自带的联系人界面,第二种就是直接去读取让后绑上来显示在主页面。话不多说直接上代码。记得在AndroidManifest.xml 记得加入这两句,不然就读取不到联系人。<uses-permission android:name="andr...
Android软键盘状态弹出与消失的示例

Android软键盘状态弹出与消失的示例

最近遇到了关于软键盘的问题,需要获取到软键盘的状态,是否在显示 ,记录一下,方便以后查阅。网上常见的判定状态方法复制代码 代码如下:getWindow().getAttributes().softInputMode== WindowManager.LayoutParams.SOFT_INPUT_STATE_UNSPECIFIED 来判断软键盘是否打开,若相等则为打开。试了之后,发现这个只对手机自带的键盘有作用,对安装的第三方的输入法没有效果。还有介绍使用I...
Android自定义彩色织带分割线

Android自定义彩色织带分割线

前言最近开发的一个产品需要涉及到订单,订单页涉及到了一个UI元素,类似饿了么的订单页以及支付宝口碑外卖订单页的彩带(通俗点讲就是一条两种颜色相间而成的分割线):可以看到,风格基本都是以两种颜色为主相间拼接,至于长度则完全由屏幕宽度来决定,因此如果想要通过设计成图片素材来作为ImageView的背景的方式实现的话,效果并不理想,因为图片的宽度完全无法确定。所以本文通过自定义View的方式,绘制出这样一个彩带的效果。实现1.Android中如何绘制四边形pub...
超简单实现Android自定义Toast示例(附源码)

超简单实现Android自定义Toast示例(附源码)

Bamboy的自定义Toast,(以下称作“BToast”) 特点在于使用简单, 并且自带两种样式: 1)普通的文字样式; 2)带图标样式。 其中图标有√和×两种图标。BToast还有另外一个特点就是: 系统自带Toast采用的是队列的方式,当前Toast消失后,下一个Toast才能显示出来;而BToast会把当前Toast顶掉, 直接显示最新的Toast。那么,简单三步,我们现在就开始自定义一下吧!(一)、Layout: 要自定义Toast,首先我们需要...
Android中Fab(FloatingActionButton)实现上下滑动的渐变效果

Android中Fab(FloatingActionButton)实现上下滑动的渐变效果

前言Promoted Actions是指一种操作按钮,它不是放在actionbar中,而是直接在可见的UI布局中(当然这里的UI指的是setContentView所管辖的范围)。因此它更容易在代码中被获取到(试想如果你要在actionbar中获取一个菜单按钮是不是很难?),Promoted Actions往往主要用于一个界面的主要操作,比如在email的邮件列表界面,promoted action可以用于接受一个新邮件。promoted action在外观...
Android通过RemoteViews实现跨进程更新UI示例

Android通过RemoteViews实现跨进程更新UI示例

一、概述前面一篇文章Android通过AIDL实现跨进程更新UI我们学习了aidl跨进程更新ui,这种传统方式实现跨进程更新UI是可行的,但有以下弊端:View中的方法数比较多,在IPC中需要增加对应的方法比较繁琐。View的每一个方法都会涉及到IPC操作,多次IPC带来的开销问题不容小觑。View中方法的某些参数可能不支持IPC传输。例如:OnClickListener,它仅仅是个接口没有序列化。接下来我们通过RemoteViews实现跨进程更新UI二、...
android的RecyclerView实现拖拽排序和侧滑删除示例

android的RecyclerView实现拖拽排序和侧滑删除示例

在平时开发应用的时候,经常会遇到列表排序、滑动删除的需求。如果列表效果采用的是 ListView 的话,需要经过自定义 View 才能实现效果;但是如果采用的是 RecyclerView 的话,系统 API 就已经为我们提供了相应的功能。接下来,我们就来看一下怎么用系统 API 来实现排序和删除的效果。创建 ItemTouchHelper创建一个 ItemTouchHelper 对象,然后其调用 attachToRecyclerView 方法:Recycl...
Android仿微信朋友圈全文收起功能示例(附源码)

Android仿微信朋友圈全文收起功能示例(附源码)

在众多的社交类软件中,朋友圈是必不可少的,可以与好友、同学等分享自己的日常和有意思的事情,在开发社交类App时,朋友圈发表的内容你不可能让他全部显示,全部显示的话用户体验度会非常不好,这时就要用到全文、收缩的功能,朋友如果想要看你发的动态,只要点一下全文就可以查看所有的全部的内容了,如果不想看,也没有必要把这一篇文章全部都滑到底部,才能看下一条内容。下边将源码贴出来供大家参考:(代码不是最简便的,但是功能是可以的)首先写一个布局,这个布局是每个子项的布局 ...
studio碰到问题:java.lang.UnsatisfiedLinkError解决办法

studio碰到问题:java.lang.UnsatisfiedLinkError解决办法

studio中碰到的jni问题最近在做supervideo,解析youku视频地址,是加过密处理,须要用对应的key去解析,获取对应数据,在引用jni时,发现接二连三出问题,以前用eclipse时开发,直接把so文件放在libs/armeabi/下,就可以了,如果有有平台差异,也最多加个libs/armeabi-v7a之类的,在studio中,jni以前虽然写过相关工程,但是没有没有遇到相关问题,看来应了一句话:没有问题,可能以后才是最大的问题。那就总结下...
Android React Native原生模块与JS模块通信的方法总结

Android React Native原生模块与JS模块通信的方法总结

Android React Native原生模块与JS模块通信的方法总结前言:在做React Native开发的时候避免不了的需要原生模块和JS之间进行数据传递,这篇文章将向大家分享原生模块向JS传递数据的几种方式。方式一:通过Callbacks的方式说起Callbacks大家都不陌生,它是最常用的设计模式之一。无论是Java,Object-c,C#,还是JavaScript等都会看到Callbacks的身影。原生模块支持Callbacks类型的参数,该C...
Android实现屏蔽微信拉黑和删除联系人功能示例

Android实现屏蔽微信拉黑和删除联系人功能示例

Android实现屏蔽微信拉黑和删除联系人功能,废话不多说,具体如下:实现效果:让微信永远弹不出那个删除的对话框不就相当于屏蔽掉该功能了吗?哈哈效果如图:实现原理:1.我们知道,其实微信每次删除联系人都会弹出此页面2.如果你对AccessibilityService有过了解或者有看过我之前的两篇博客,你会知道,其实每次弹出这个框,都会触发AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED这个事件,所以我们只要在每次触发...
解决 INSTALL FAILED CONFLICTING PROVIDER的问题方法

解决 INSTALL FAILED CONFLICTING PROVIDER的问题方法

解决 INSTALL FAILED CONFLICTING PROVIDER的问题方法在安装Android应用时出现INSTALL FAILED CONFLICTING PROVIDER问题,是不是感觉很抓狂呢,下面就跟大家分享一下出现这个问题的原因及解决方案。问题原因在Android中authority要求必须是唯一的,比如你在定义一个provider时需要为它指定一个唯一的authority。如果你在安装一个带有provider的应用时,系统会检查当前...
<< 1 2 3 4 5 6 7 8 9 10 >>