自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 Glide和Picasso的区别

Glide就是Picasso的克隆版本,但是细节上还是又不少区别的Picasso和Glide各有所长 根据自己的需要选择合适的。对我而言 我更喜欢Glide 因为它比Picasso快,虽然需要更大的缓存空间来缓存。Glide和Picasso几乎可以做一样多的事情,代码也差不多一样。 区别:1.Glide导入依赖需要使用Support Library V4包2.Glide和Picasso的简单加载图...

2018-06-12 10:11:55 324

原创 EventBus主页面发送消息其他页面接收消息

今天心血来潮 怀着激动的心情来给码友们甩一个小博客!!概念、优点等什么的我就不说了网上一箩筐废话不说了 直接甩代码1.导入依赖compile 'org.greenrobot:eventbus:3.0.0'主页面发送消息:public class MainActivity extends AppC...

2017-11-07 20:15:14 1931 1

原创 Router自定义框架

【简单实现组件之间跳转】基础公共组件中的路由表以key value的映射集合形式存放在堆内存里, 在Application里往map集合中注册需要的类, 需要跳转时通过key获取value即获取目的类即可。【代码实现】创建Router类 实现单例。 声明一个Map集合 Map<String,<? extends Activity>>。 添加注册方法 给Map中添加需要注册的数据。 添加跳转方法 通过Key获取对应Value 实现跳转。 在Application中

2022-05-20 22:18:16 241 1

原创 Android多级选择控件,单级单选,单级多选,多级单选,多级多选

1.导入依赖implementation 'com.github.Tomzem:MultiLevelSelect:1.0.1'2.在Project的build.gradle中添加:allprojects { repositories { maven { url "https://jitpack.io" } }}3.xml布局<Lis...

2019-11-27 17:30:38 1470

原创 哥纵横Android多年,竟然翻车在Json上

Retrofit 是目前主流的网络请求框架,不少用过的小伙伴会遇到这样的问题,绝大部分接口测试都正常,就个别接口尤其是返回失败信息时报了个奇怪的错误信息,而看了自己的代码逻辑也没什么问题。别的接口都是一样的写,却没出现这样的情况,可是后台人员看了也说不关他们的事。刚遇到时会比较懵,有些人不知道什么原因也就无从下手。问题原因排查问题也很简单,把信息百度一下,会发现是解析异常。那就先看下后台返回......

2019-11-27 17:29:17 955

原创 获取APK的签名信息

1.把apk后缀改为zip 解压2.打开META-INF 找到CERT.RSA文件3.打开cmd 属于命令 keytool -printcert -file D:/CERT.RSA注意:如果出现keytool不是内部或外部命令。。。就在cmd里编辑路径找到keytool.exe所在文件路径下我的是 D:/java/jdk.../bin 再输入命令即可。...

2019-11-25 10:42:07 614

原创 APP开机自启动

项目背景:一个类似快递柜子的智能柜,无人操作定时开关机,所以少不了开机自启动。大概思路:当Android启动时,会发出一个系统广播,内容为ACTION_BOOT_COMPLETED,它的字符串常量表示为 android.intent.action.BOOT_COMPLETED。只要在系统中捕捉到这个消息,就启动APP。权限<uses-permission android:nam...

2019-11-25 10:05:36 254

原创 实现关机和重启

我们的项目是在定制的Android系统6.0的平板上使用 根据项目需求,要求实现关机、重启设备的功能。首先我们要知道这种操作都是得有系统级权限的。权限:<manifest ... android:sharedUserId="android.uid.system"><uses-permission android:name="android.permission.S...

2019-11-21 12:53:49 431

原创 版本更新

App一个必要的功能就是 版本更新 ,它有好多种实现方法,比如:腾讯的bugly、蒲公英等,我们也可以自己动手实现。遇到的坑bugly:文档上写着默认3s,有时候会延迟弹框十分钟左右,会有一种集成失败的假象。动手下面就是我自己写的一种实现方式,调用Android手机原生的下载管理器去下载。思路1.网络请求拿到最新版本号2.获取当前版本号,比较版本号,如果服务器上的版本号...

2019-07-17 14:21:08 158

转载 Looper.loop为什么不会阻塞掉UI线程?

要完全彻底理解这个问题,需要准备以下4方面的知识:Process/Thread,Android Binder IPC,Handler/Looper/MessageQueue消息机制,Linux pipe/epoll机制。总结一下楼主主要有3个疑惑:1.Android中为什么主线程不会因为Looper.loop()里的死循环卡死?2.没看见哪里有相关代码为这个死循环准备了一个新线程去运转...

2019-07-12 16:51:58 1692 2

原创 仿QQ微信发动态多张拍照上传

最近项目要增加这样一个新功能 ↓↓↓需 求:审核人员到现场勘查 拍照上传(只能多张拍照 不能用相册里的照片 以求真实)。思路流程:如下 ↓↓↓1.用GridView实现 首先手动添加一条item 用于点击弹出底部Dialog 点击拍照2.调用照相机拍照 返回图片路径3.在回调里面添加到List集合 判断List大小 如果小于9 手动给list添加一条it...

2019-05-14 11:49:24 217 1

原创 融云 Android系统6.0 8.0遇见的问题

昨天集成了一个融云的即时通讯 昨天写的代码还好好的 早上来了运行了一下发现问题了!wtf? Android6.0运行没毛病 到了8.0就出现bug了 !下面是报错信息Process: com.example.ihaji:ipc, PID: 25610java.lang.UnsatisfiedLinkError: dlopen failed: library "libsqlite....

2019-04-15 10:30:42 355

原创 网易云引导页ViewPager联动

分析目测布局:分为两个viewpager,上面展示文字的viewpager和下面的图片viewpager; 进一步观察:上面的文字viewpager滑动有延迟,而图片viewpager是没有滑动自带动画的,而且都没有自带滑动手势效果; 分析得出:两个viewpager都拦截滑动事件,文字viewpager需要设置切换时间,有动画效果,图片viewpager去掉自带动画; 分析图片vi...

2019-01-25 15:52:48 341

原创 一个卡片式菜单

1.在 build.gradle下添加repositories { ... maven { url "https://jitpack.io" }}2.添加依赖dependencies { compile 'com.github.DxTT:coolMenu:v1.1'}3.在XML你的布局中添加CoolMenuFrameLayout控件&lt;co...

2019-01-24 15:38:16 636

原创 EditText软键盘

1.Android中的EditText默认时不弹出软键盘的方法     在 AndroidMainfest.xml中选择当前使用EditText的activity,设置windowSoftInputMode属性为 adjustUnspecified|stateHidden &lt;activity android:name=".Main"       android:label="@s...

2018-11-14 11:18:06 233

原创 计算屏幕宽高

 WindowManager wm = (WindowManager) this.getSystemService(Context.WINDOW_SERVICE);        DisplayMetrics dm = new DisplayMetrics();        wm.getDefaultDisplay().getMetrics(dm);        int width = ...

2018-11-14 11:13:45 433

原创 悬浮按钮

1.xml布局&lt;Button        android:id="@+id/btn_move"        android:layout_width="100dp"        android:layout_height="wrap_content"        android:layout_centerInParent="true"        android:te...

2018-11-14 11:13:06 460

原创 Glide加载圆形图片带白色边框

1.导入Glide依赖compile 'com.github.bumptech.glide:glide:4.0.0-RC1'2.创建一个类 继承BitmapTransformation/** * 加载圆形头像带白色边框 */public class GlideCircleWithBorder extends BitmapTransformation { private...

2018-11-14 11:08:06 1353

原创 ButterKnife注解

 https://github.com/JakeWharton/butterknife 

2018-11-08 10:33:47 242

原创 圆形ImageView

集成步骤dependencies { ... implementation 'de.hdodenhof:circleimageview:2.2.0'} 布局&lt;com.wjl.circleimageview.CircleImageView xmlns:app="http://schemas.android.com/apk/res-auto" a...

2018-11-08 10:22:11 128

原创 界面侧滑功能

https://github.com/bingoogolapple/BGASwipeBackLayout-Android

2018-11-08 10:20:37 180

原创 状态栏沉浸

https://github.com/gyf-dev/ImmersionBar

2018-11-08 10:20:00 115

原创 吐司工具类

集成步骤dependencies { implementation 'com.hjq:toast:3.0'}初始化Toast// 在Application中初始化ToastUtils.init(this);显示Toast ToastUtils.show("我是吐司"); 获取Toast对象ToastUtils.getToast();设置Toa...

2018-11-08 10:03:59 641

原创 标题栏

集成步骤dependencies { implementation 'com.hjq:titlebar:3.5'}属性大全(划重点,要考)&lt;declare-styleable name="TitleBar"&gt; &lt;!-- 标题栏的样式 --&gt; &lt;attr name="bar_style"&gt; &lt;...

2018-11-08 09:48:32 471

转载 权限请求框架

集成步骤dependencies { implementation 'com.hjq:xxpermissions:5.2'}一句代码搞定权限请求,从未如此简单XXPermissions.with(this) //.constantRequest() //可设置被拒绝后继续申请,直到用户授权或者永久拒绝 //.permission(Permi...

2018-11-08 09:40:23 430 1

原创 解决ScrollView嵌套ListView或GridView置顶显示问题

今天无意间发现一个小小的问题,当我们使用ScrollView里面嵌套ListView或GridView的时候页面显示会停留在ListView的item当前,而不是置顶显示整个页面,不要慌,解决办法来了。1.在java代码中ListView或GridView初始化后面添加以下代码:scrollView.smoothScrollTo(0,20);scrollView.setFocusable(true...

2018-06-15 15:45:57 244

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除