
android
你好好呀!
学无止境
展开
-
RxJava2实现请求并发,减少请求消耗的总时间
首先我们创建两个Observable1 Observable2来模拟网络请求,代码如下: //每个子Observable都要加subscribeOn(Schedulers.io())指定为异步线程 不同线程来处理请求达到并发 val observable1: Observable<String> = Observable.create(O...原创 2019-10-25 17:51:02 · 1147 阅读 · 0 评论 -
NestedScrollView的bug处理,子view首次点击无效
这是NestedScrollView的一个bug,问题在于,mIsBeingDragged = !mScroller.isFinished();这句代码在onintercepttouchevent(事件拦截方法中)通过调试可以发现,当停止滑动之后点击子View时 !mScroller.isFinished()=false,所以mIsBeingDragged=true 会把事件拦截,子view无法接原创 2018-01-27 14:27:24 · 1933 阅读 · 1 评论 -
Android使用Handler造成内存泄露的分析及解决方法
阅读目录一、什么是内存泄露?二、内存泄露的危害三、解决方案四、总结 一、什么是内存泄露? Java使用有向图机制,通过GC自动检查内存中的对象(什么时候检查由虚拟机决定),如果GC发现一个或一组对象为不可到达状态,则将该对象从内存中回收。也就是说,一个对象不被任何引用所指向,则该对象会在被GC发现的时候被回收;另外,如果一组对象中只包含互相的引用,而没有来自它们外部的引用(例如有两个对象A和B互...转载 2018-02-09 13:54:18 · 229 阅读 · 0 评论 -
教大家如何一步一步的将自己的开源项目上传到jcenter
前言:现在网上很多开源项目库,上传到jcenter上,使用起来也很方便,直接在build.gradle中添加依赖,下载下来就可以使用, 所以自己也想尝试上传一个试试。学习这个的时候,自己也是在网上各种找资料,中途也遇到了很多坑,觉得有必要做下笔记,写成博客,怕自己以后忘记,再翻翻博客就知道了。1、首先我们要注册一个bintray,注册网址https://bintray.com/signup/oss...原创 2018-02-11 09:37:59 · 3955 阅读 · 3 评论 -
android打包签名介绍
Keytool 是一个有效的安全钥匙和证书的管理工具. Java 中的 keytool.exe (位于 JDK\Bin 目录下)可以用来创建数字证书,所有的数字证书是以一条一条(采用别名区别)的形式存入证书库的中,证书库中的一条证书包含该条证书的私钥,公钥和对应的数字证书的信息。证书库中的一条证书可以导出数字证书文件,数字证书文件只包括主体信息和对应的公钥。 Keytool 把钥匙和证书储存到一个...转载 2017-05-27 14:56:04 · 1190 阅读 · 0 评论 -
android js 互调
android 代码package com.example.webview;import java.io.File;import android.annotation.SuppressLint;import android.app.Activity;import android.app.Dialog;import android.content.Intent;import an...原创 2016-04-14 17:35:53 · 504 阅读 · 0 评论 -
Gson和fastJson 解析嵌套泛型的json数据
Test /* * { "code": 1, "datas": [{ "address": "深圳", "age": 18, "email": "123@qq.com", "nickName": "小明原创 2018-04-12 18:08:39 · 1243 阅读 · 0 评论 -
MPAndroidChart实现折线图,单折线图,多折线图,饼图,蜘蛛网图,柱状图,单柱状图,多柱状图,组合图,recycleview中显示
MPAndroidChart实现折线图,单折线图,多折线图,饼图,蜘蛛网图,柱状图,单柱状图,多柱状图,组合图原创 2018-06-06 19:26:48 · 992 阅读 · 5 评论 -
android开源库合集
android开源库合集1、阿里巴巴开源的自定义viewpager,支持多重动画,横向纵向,多页面显示项目地址:https://github.com/alibaba/UltraViewPager2、android版本更新功能。使用retrfit2 rxjava2 okhttp3实现多文件多线程下载(支持断点下载), android版本更新:通知栏更新,对话框更新 兼容8.0...原创 2018-07-25 17:33:10 · 28577 阅读 · 3 评论 -
Glide中MultiTransformation使用,实现多种变换效果组合(圆形,圆角,高斯模糊,黑白...)
Glide中MultiTransformation使用MultiTransformation可以实现多个Transformation效果结合实现一些需求1、例如Glide加载一张图片,我们需要把这张图片变成圆形的,并且高斯模糊就可以使用MultiTransformatio如下图代码如下://BlurTransformation高斯模糊模糊度为10 CircleCrop圆形图片 组合到M...原创 2018-10-23 15:21:03 · 3531 阅读 · 0 评论 -
recycleview实现分组列表
最近看到diycodeAPP中一个列表分组界面,起初是用listview嵌套gridview实现的,效果一样只是有些复杂,但是后来看了下源码,是用recycleview实现的,并且还很简单,最后就尝试了一下,实现了这个列表功能,所以在这里记录一下,方便以后遇到类似功能,直接可以拿来使用,这里感谢一下diycode的API以及实体类,为了方便接口和实体类直接用diycode的,API:https原创 2017-08-28 14:28:11 · 5143 阅读 · 5 评论 -
android中mvp+retrofit+rxjava处理mvp内存泄漏整合的demo
项目下载地址:http://download.youkuaiyun.com/download/csdn576038874/10261968代码如下:项目结构:至于mvp的原理,v层抽象出接口,供P层调用,M层进行数据处理,抽象出接口,供P调用,P层中可拿到M和V 的接口引用,进行方法调用等逻辑处理,再利用接口回调的方式将解析好的数据返回给V层,这样就打到M层不直接和V层打交道,实现解耦和的效果mvp模式会存在...原创 2017-01-17 17:37:14 · 4061 阅读 · 1 评论 -
listview中如果存在button imagebutton 等强焦点事件 处理方法
1、在item根布局中添加android:descendantFocusability="blocksDescendants" 2、控件上添加 android:focusable="false"例如 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout原创 2016-05-18 16:06:18 · 361 阅读 · 0 评论 -
android中 拍照 视频 录音 显示缩略图
1、拍照 /** * 处理拍照录音 视频的点击事件 * * @author 00 */ class MyOnClickLitener implements OnClickListener { @Override public void onClick(View v) { //申明意图对象 Intent intent = null; //申明文件要保原创 2016-05-20 10:37:46 · 1733 阅读 · 1 评论 -
TreeListVew+PullToRefreshListView结合使用
因为项目中有个管控区域的功能需要用到树形列表功能,于是在网上找了demo,看到了张鸿洋写了一个类似功能的demo,就参考一下,完成此功能,后续因为服务器数据不定时间会变化,要提供个刷新功能,以便于可以实时得到最新的数据,所以就想起能否和pulltorefreshlistview结合使用呢?做个下拉刷新,岂不是更好,然后就有研究了一下修改treelistview的部分代码完成了这个功能,对于tree...原创 2017-05-26 17:03:25 · 493 阅读 · 0 评论 -
android图文居中按钮控件
import com.winfo.gdmsaec.app.R;import android.content.Context;import android.content.res.TypedArray;import android.graphics.Paint;import android.graphics.Rect;import android.graphics.drawable.Dra转载 2016-05-20 13:27:24 · 797 阅读 · 0 评论 -
okhttp上传文件时携带参数
private void uplaodFile2(final File file) { String token = PreferenceUtils.getString(mainActivity,"token" , null); MultipartBody.Part tokenPart = MultipartBody.Part.createFormData("tok原创 2017-05-22 16:58:44 · 2176 阅读 · 1 评论 -
rxjava 结合okhttp 处理嵌套请求
rxjava 结合okhttp 嵌套请求,第一个请求成功后拿到服务器返回的数据,作为第二个请求的参数,继续进行第二次请求例如:用户输入用户名和密码之后登陆成功并且获取用户信息一般情况,用户输入用户名和密码之后,服务会返回一个token,并不会直接返回用户信息,此时,我们拿到token再作为用户用户信息接口的参数,请求,即可获取到用户信息了,具体的代码如下github有项目地址下载下来可以直接运行...原创 2017-05-22 17:03:40 · 2416 阅读 · 1 评论 -
rxjava,okhttp 合并请求
项目中我们往往会有这样的需求,一个页面,可能存在多个请求,并且每个请求返回的是不同的数据,当用户进入页面的时候,我们需要向服务器请求两次,当第一个请求成功之后,我们紧接着去请求第二个,并且两个请求同时成功之后,请求才真正成功,有一个请求失败,就提示用户请求失败。我们现在用到了rxjava 那么实现这个请求合并就很简单了具体实现:guithub项目地址https://github.com/wj576...原创 2017-05-22 17:05:05 · 2008 阅读 · 0 评论 -
侧滑菜单DrawerLayout+Toolbar结合使用,切换菜单
因为最近项目中用到侧滑菜单,于是就想到了谷歌提供的这个类网上看了看资料完成了侧滑菜单的功能,并写了一个demo记录下来,加深记忆和以后做类似功能时,直接看看笔记比住较方便主布局文件分为两个一个是侧滑菜单覆盖toolbar一个是不覆盖toolbar具体看效果图,无赖不会上传gif1.覆盖toolbar2、不覆盖toolbar2、menu主布局文件(原创 2017-06-29 10:06:57 · 3585 阅读 · 0 评论 -
android版本更新功能
1、检测是否有新版本//访问服务器是否有新版本发布 UpdateVersionUtil.checkVersion(MainActivity.this); //设置版本更新的回调接口 UpdateVersionUtil.setUpdateListener(new UpdateListener() { @Override public void onUpdateReturn原创 2016-05-20 11:22:28 · 14690 阅读 · 19 评论 -
android中自定义加载的对话框。。。。
1、提供一个 创建对话框的方法/** * 获取一个类似加载的对话框 * @param context 上下文 * @param msg 文字说明 * @return 对话框的对象 */ public static Dialog createLoadingDialog(Context context, String msg) { /* * 获得view填充器对原创 2016-05-18 11:51:11 · 675 阅读 · 0 评论