- 博客(15)
- 资源 (4)
- 问答 (1)
- 收藏
- 关注
原创 android 二维码扫描
直接效果图 简单的封装了可以直接抄到项目里不用改啥,集成自最新的zxing库。 增加了手势缩放,双击放大/缩小。 可以打开闪光灯本地图片二维码识别识别有音效和震动不想要的或者改声音[ps.可以直接替换raw目录下的beep文件]的看代码注释就知道了 新代码优化了扫码识别 下载地址github ...
2021-04-28 10:26:43
407
原创 Jetpack mvvm 终
前面3篇讲完了mvvm必要的3个库ViewModel LiveData DataBinding 本篇将讲解如果用这3者结合组成mvvm的架构 在此之前让我们先了解下mvc mvp 最后再来说下mvvm MVC 其实Android本身就有mvc的例子了 比如直接新建一个Activity 在xml布局定义一个按钮实现点击事件 当用户点击按钮的时候我们在按钮的OnClickListener接口回掉中做一个1+1的运算Toast弹出1+1的结果 这一个简单的步骤就包含了mvc的结构了 M指Model(模型层.
2020-10-16 11:19:56
409
原创 Jetpack mvvm 三部曲(三) DataBinding
国庆节假期过完了今天正常上班 感觉假期啥都没玩到 离下一次假期要到明年去了= =今年感觉啥都没整好 吐槽完了 继续本系列的第三篇DataBinding 第一篇ViewModel 第二篇LiveData 终章 MVVM 放下本jetpak系列学习写的demo jetpackDemo 老规矩贴下官网DataBinding概览 先说下DataBinding的作用是帮助我们少写了view的赋值改变状态的代码将数据直接绑定到xml实现自动赋值 下面就直接开整 使用在app目录中buil..
2020-10-16 11:19:18
714
原创 Jetpack mvvm 三部曲(二) LiveData
在上篇讲了下ViewModel 这次接着讲LiveData 下一篇 Jetpack mvvm 三部曲(三) DataBinding 放下本jetpak系列学习写的demo jetpackDemo 先贴下官方的链接LiveData 根据官方给的说发LiveData可为数据提供观察者在数据进行改变的时候活跃的观察者可以获取到数据的变化飞活跃的观察者是不能收到变化通知的 我这里写了个计时器先记录生命周期的状态以及LiveData数据的产生变化是打印可以看到在app回到桌面进入到onPause后观察者就
2020-10-16 11:18:40
329
原创 Jetpack mvvm 三部曲(一) ViewModel
先说明此系列都是Java代码写的 不是Kotlin 虽然我也想用kotlin 但实力不允许 Jetpack mvvm 三部曲(二) LiveData 官方的Jetpack的链接 ViewModel 放下本jetpak系列学习写的demo jetpackDemo#### 了解ViewModel ViewModel 是一个jetpack的一部分可以用它来管理页面的全局变量通过它来绑定Activity和Fragment的生命周期 比如页面在手机横屏时会重新走一次生命周期要没有重新onSaveInstanceSt
2020-10-16 11:17:49
411
原创 android 自定view 网状结构图
网状图的应用很常见了 大多数用在用户分析 比如战斗力图表等等 简单的描述下 流程吧 下面直接用六边形的例子 1.第一步首先要分析绘制出六个角的位置 画几何图形 一般都用path去绘制 先计算出六个角度的大小 网状图的半径 //角度 /*PI就是圆周率π,PI是弧度制的π,也就是180° 所以,Math.PI = 3.14 = 180° ps,PI是一个浮小数*/ //angle = 180...
2020-01-21 11:08:16
861
原创 RecyclerView 暂无数据 点击重新加载(一)
开发过程中往往会有 列表没有数据就显示 暂无数据点击刷新的需求 局部刷新可以参考RecyclerView 暂无数据 点击重新加载 (二) 可能大家会用一个RelativeLayout写套一个listview 以及一个暂无数据的ui 有数据显示就把暂无数据这个样式隐藏 如果这种页面多了 复制粘贴也是很烦的一件事情 今天就写一个简单的例子用自定义下RecyclerView 实现 直接继承 Rec...
2019-11-23 22:45:03
2053
原创 RecyclerView 暂无数据 点击重新加载 (二)
上回初步弄了下RecyclerView 暂无数据 点击重新加载 但那个效果不之适用于点击全屏 RecyclerView 暂无数据 点击重新加载 (一) 这回讲下局部刷新 实现下面这样的效果的大致思路 上篇文章实现的方式只是单纯的重写onDraw和dispatchTouchEvent方法 本次实现的思路图片和文字还是和上回一样在onDraw绘制 主要的处理在于局部刷新按钮 废话不多说 上个图 p...
2019-11-23 22:42:56
849
原创 swift 判断是否设置了代理
为了保障数据不被别人通过代理手段爬取 就有了这样的需求 public class func isUsedProxy() -> Bool { guard let proxy = CFNetworkCopySystemProxySettings()?.takeUnretainedValue() else { return false } guard let di...
2019-09-11 19:33:58
1647
原创 swift 自定义蒙层相机
直接上效果 自定义相机这个就没得说了集成的AVFoundation 百度都有 直接说蒙层吧 //绘制遮罩层 func drawCoverView() { let view = UIView(frame: self.view.bounds) view.backgroundCo...
2019-09-03 15:41:13
1613
原创 swift pod 引用 第三方框架
swift pod 引用 第三方框架 废话不多说直接进入主题 第一步的基础 CocoaPods安装 安装教程 安装完了 进入项目根目录 打开终端 cd 到根目录 懒得敲阔以直接 打开访达窗口打开根目录 一样可以cd 过去 ls 看下目录 看看是不是根目录 pod 的创建 得根据xcodeproj 文件为依赖 才能创建 不然回报错 无法创建 下一步终端输入命令 pod init 初始化一...
2019-08-06 11:28:56
1916
转载 android studio解决xml布局不显示出来
解决布局无法加载,xml也没有错误,提示NOTE: One or more layouts are missing the layout_width or layout_height attributes. These are required in most layouts 百度了android studio xml黑屏的解决方案 更改主题机型神马统统都没有用 发现xml布局...
2019-02-28 16:40:34
10288
原创 Android 美团瓦力(walle)加固 多渠道打包
随着业务需求增长多渠道打包越来越常用了今天推荐一个打包神器walle https://github.com/Meituan-Dianping/walle 简单粗暴就是干 不过瓦力虽然好使但是也会碰到硬渣子 上周五打包发布的时候发现应用宝上架必须要用他的加固工具加固下结果导致用乐固加固的时候出现渠道失效了后台没法根据渠道统计了简直日了狗 今天百度各种啥折腾了一下发现乐固这个加固工具...
2018-12-17 16:13:20
2423
原创 微信小程序picker时间选择器 预约时间选择器 自定义时间选择器
前几天因为一个业务需求 需要实现一个预约时间的效果 效果如下(ps.第一次写小程序 如果写的不好地方还请大家多多指教) 微信小程序自带的picker 是没有这种效果的 实现的原理是基于picker mode的属性 利用多列选择器效果加上实现类似日历的算法实现的 下面直接贴核心代码 wxml布局 <view class='view3'> <text>......
2018-08-17 12:42:04
39519
3
原创 Android 获取Mac地址
重新更下 mac的方法 除了mac地址的获取 还有各种唯一标示 注意的是权限获取 import android.content.Context; import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import android.os.Build; import android.provider.Set...
2016-05-16 11:49:31
15268
1
walle python打包工具
2018-12-17
微信支付头次支付可以第二次支付返回-1 清空微信缓存 又可以了 求解
2015-04-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅