![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android
_ZHANGJUNPING
这个作者很懒,什么都没留下…
展开
-
自定义组件 滑动列表组件思路
自定义组件:实现adapter动态管理子项,view高度自适应子项。可左右滑动,view中心位置为选中位。滑动到中间区域的子项自动放大高亮,其他缩小半透明。滑动手势结束可以惯性滑动到最近的子项选中状态。左右边界允许拉伸最多一个子项的距离,松开自动回弹到选中位置。实现思路:(思路来源参考goeasyway)1,onMeasure (measureChild)循环测量子view (如需自适应大小可以在 测量完child后通过。setMeasuredDimension设置) onLa...原创 2021-08-17 14:11:47 · 413 阅读 · 0 评论 -
android 高德地图画多边形,已知中心点 宽高画矩形 ,实际距离 千米转地图坐标距离
项目中用到mapabc 绘制矩形区域。客户只能手动选择中心点,并填写区域的宽和高,切单位为km。要求实时显示规划区域。记录笔记。第一步找到地图绘制多边形apipolygon = map.addPolygon(new PolygonOptions() .addAll(createRectangle(marker.getPosition(), 1, 1))//绘制多边形顶点坐标 .fillColor(0x1A1677FF)//填充颜色 .stroke原创 2020-09-24 19:50:20 · 2043 阅读 · 2 评论 -
android Handler handler = new Handler() activity内存溢出 activity销毁 handler还调用的问题 多次跳转目标页面
问题:使用Handler handler = new Handler() 在activity中出来异步网络数据,多次调用handler导致activity销毁后HandleMessage 还能调用 activity中的方法多次跳转目标页面。原因: activity使用匿名内部类导致handler类对象持有activity引用导致内存溢出,activity没有被回收。所以你以为被销毁activity依然在。解决:创建自定义接口,和自定义handler类。解耦activity和handle..原创 2020-06-22 11:28:46 · 1794 阅读 · 0 评论 -
Android 命令行签名打包,加固二次打包
jarsigner -verbose -keystore /Users/zjp1002038/Desktop/sighome.jks -signedjar /Users/zjp1002038/sighomes.apk /Users/zjp1002038/Downloads/sighome-release-2.3.0_a57ba6cd_enc.apk sighome/Users/zjp1002038/Desktop/sighome.jks 签名文件路径/Users/zjp1002038/...原创 2020-06-13 14:52:41 · 308 阅读 · 0 评论 -
Android AppShortcuts 桌面启动图标长安弹出框 类似支付宝 出现扫一扫 付款
使用到的Android原生框架AppShortcuts。桌面快捷 按钮有两种方式实现第一中在manifest配置静态方式。使用:在启动类加入如下meta-adta<activity android:name=".MainActivity"> <intent-filter> <action android:name="androi...原创 2020-05-07 11:07:28 · 698 阅读 · 0 评论 -
can not parse the litepal.xml, check if it's in correct format
android 使用litepal数据库模块 打包apk 开启了代码混淆。导致错误加入如下代码在 proguard-rules.pro中-keep class org.litepal.** { *; }-keep class * extends org.litepal.crud.LitePalSupport { *; }-keep class org.**{ *; }另外...原创 2019-08-19 13:58:51 · 580 阅读 · 2 评论 -
Error:No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
注意:在3.0以后的 android studio 会报错 Error:No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android原因 新版本的NDK与3.0及以前旧版的Android Gradle plugin插件不兼容官方ndk下载地址 :https:/...原创 2019-04-15 16:11:28 · 180 阅读 · 0 评论 -
android 各类开源项目整理 包括 个性化控件 工具库 完整优秀项目
注 内容来自github 社区 目前包括:Android 开源项目第一篇——个性化控件(View)篇包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、TimeView、TipView、FlipVi...转载 2019-04-17 14:40:19 · 2543 阅读 · 0 评论 -
glide 使用简单介绍 和 缓存 监听 变化方法
一 ,包模块引入。as使用dependencies { implementation 'com.github.bumptech.glide:glide:4.9.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'}idea maven使用<dependency> <gr...原创 2019-04-26 09:29:10 · 294 阅读 · 0 评论 -
android 最全 各种UI效果 UI框架 github框架总结大全
注:内容来自github 致力于android推广包括 listview GridView 刷新动画 侧滑动画 抽屉动画 button动画 加载动画 进度条动画 tab动画 主题动画 点击效果动画等List of Android UI/UX LibrariesA curated list of awesome Android UI/UX libraries....转载 2019-04-17 10:41:34 · 3104 阅读 · 4 评论 -
UnsatisfiedLinkError: dalvik.system.PathClassLoader nativeLibraryDirectories couldn't find "xxx.so"
android 集成ndk 或者使用第三方so jni框架常出现错误UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/xxx-1/base.apk"],nativeLibraryDirectories=[/data/app/xxxx-1/lib/arm64, /vendor/...原创 2019-04-16 08:41:04 · 732 阅读 · 0 评论 -
android 集成NDK jni 讲解 笔记
官方ndk下载地址 :https://developer.android.google.cn/ndk/downloads/正文说到NDK,相信大家都不陌生,它是Google为便于Android开发提供的一种原生开发集:NativeNDKDevelopment Kit,而且也是一个包含API、构建工具、交叉编译、调试器、文档示例等一系列的工具集,可以帮助开发者快速开发C(或C++)的动...原创 2019-04-15 18:19:40 · 446 阅读 · 0 评论 -
android ,web等 使用 lottie 动画框架 流程
前言lottie-android一句话介绍:一款可以在Android端快速展示Adobe Afeter Effect(AE)工具所作动画的框架上榜理由:动画类框架第一名,github上13.3k个star证明了他的优越性,利用json文件快速实现动画效果是它最大的便利,而这个json文件也是由Adobe提供的After Effects(AE)工具制作的,在AE中装一个Bodymovin的...原创 2019-04-04 10:22:16 · 660 阅读 · 0 评论 -
springboot 获取 上传图片 post接口
第一 android手机端post上传图片 (也可以是图片,文字混合或者图片数组等组合形式,这里服务端演示获取图片) 下面代码中写了多种组合方式/** * 上传文件 测试多张图片和文字混合上传 * * @param actionUrl 接口地址 */ public <T> void upLoadFileduo(Cont...原创 2019-03-20 17:19:56 · 4397 阅读 · 0 评论 -
android 实现沉浸式状态栏的几种方法
效果图:方法一,通过创建工具类 计算你自己的tabbar实现activity 使用方法:@BindView(R.id.lin_top)LinearLayout linTop;ImmersedStatusbarUtils.initAfterSetContentView(this, linTop);工具栏ImmersedStatusbarUtils:pac...原创 2019-06-13 09:37:24 · 496 阅读 · 0 评论 -
android drawable 使用shape实现复杂图像
效果图直接上代码<ImageView android:id="@+id/im_detelt" android:layout_width="15dp" android:background="@drawable/bankground_blue" android:layout_marginLeft="91dp" android:layou...原创 2019-06-11 11:29:42 · 1406 阅读 · 0 评论 -
Android 自定义 Toast 带图标 可修改位置
先上要求效果图代码:public class ToastUtil { public static void toast(String s){ Toast.makeText(context,s,Toast.LENGTH_SHORT).show(); } private static TextView mTextView; ...原创 2019-06-17 14:08:43 · 1690 阅读 · 0 评论 -
Activity 设置为 dialog 显示在底部并宽满屏
activity注册设置style<activity android:name=".home.currenttask.state.StateActivity" android:theme="@style/DialogTheme" /><activity<style name="DialogTheme"> <item ...原创 2019-09-28 10:33:24 · 2127 阅读 · 0 评论 -
Android 引用第三方包 出现依赖包 冲突解决办法: Error: Program type already present: org.slf4j.ILoggerFactory
出现问题 多个第三方包 重复依赖相同的包:已我的项目 重复ILoggerFactory 为例:报错信息:Error: Program type already present: org.slf4j.ILoggerFactory复制最后的类名,在as任意地方 双击 shift 出现如下 输入类名 如:“ILoggerFactory”可以看到 在第一行和第二行显示 两个...原创 2019-09-25 14:19:22 · 3666 阅读 · 1 评论 -
Eventbus 粘性事件 滞后传递数据。activity间传大数据
项目中遇到activity传大数据集合。使用EventBus滞后传统的功能。网上找到的阿里开发手册的内容 。记录笔记。阿里给出的方案,是通过 EventBus 来传递数据。EventBus 的 粘性事件很多商业项目其实都用到了 EventBus,这里就简单介绍如何使用 EventBus 的粘性事件来完成数据在 Activity 间的传递。EventBus 是一个 Android ...原创 2019-09-24 09:12:19 · 1633 阅读 · 0 评论 -
BaseQuickAdapter 函数用法笔记 recyclerView 封装adapter
包引入:implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.47'adapter:public class TeamPoastAdapter extends BaseQuickAdapter<TeamPostEntity,BaseViewHolder> { private ...原创 2019-09-18 15:11:10 · 419 阅读 · 0 评论 -
Android websocket 消息推送
2019-09-25 新加测试地址 :wss://echo.websocket.org //https://www.websocket.org/echo.html//发送 String 数据void send(String text);//发送 byte[] 数据void send(byte[] bytes);//发送 ByteBuffer 数据void send(Byte...原创 2019-08-20 19:24:29 · 1141 阅读 · 2 评论 -
Failed to resolve: com.github..
android studio 常出现 依赖了github库后 报错:Failed to resolve: com.github..解决办法只需添加 如下仓库urlmaven { url "https://jitpack.io"}注意添加位置:allprojects 目录下allprojects { repositories { mave...原创 2019-08-15 10:59:03 · 1904 阅读 · 5 评论 -
android 自动生成带版本号和发布类型的apk 文件名
在 app.gradle加入如下代码可以按自己需求修改afterEvaluate { android.applicationVariants.all { variants -> if (variants.getName().endsWith("Release") || variants.getName().endsWith("release")) { ...原创 2019-08-20 14:45:02 · 685 阅读 · 0 评论 -
Android tcp Socket
目录: 1,工具类(一) TcpClient 2,工具类(二)SocketTransceiver 3,activity中的使用:工具类(一) TcpClientimport java.net.InetAddress;import java.net.Socket;/** * * TCP Socket客户端 * *...原创 2019-08-09 14:12:28 · 368 阅读 · 0 评论 -
android adapter 异步加载图片
首先准备工具类/** * Created by Administrator on 2018/11/23. */public class Instance { public static ImageLoader imageLoader = ImageLoader.getInstance(); public static DisplayImageOptions user_...原创 2019-02-27 10:39:32 · 716 阅读 · 0 评论 -
android 线程与handler的简单使用(一)
//创建线程class MyThand extends Thread{ @Override public void run() { super.run(); try { while (true) { sleep(3000); ...原创 2019-02-21 13:18:31 · 216 阅读 · 0 评论 -
android fragment的显示隐藏生命周期简述
1,fragment通过 FragmentTransaction 和activity使用时fragment切换 运行@Overridepublic void onHiddenChanged(boolean hidden) { super.onHiddenChanged(hidden); if (hidden) {//展示 }}activity 切换 f...原创 2019-01-17 13:23:13 · 1468 阅读 · 0 评论 -
android eventBus 的简单使用(一)
首先应用jar包 如果是eclipse请自行下载 https://download.csdn.net/mycompile 'org.greenrobot:eventbus:3.0.0'然后写一个 实体类用于 存储传递数据和状态值public class EventBusCarrier { private String eventType; //区分事件的类型 ...原创 2019-01-17 10:00:27 · 223 阅读 · 0 评论 -
anroid activity fragment的使用
废话不说直接上代码 若有疑问可以留言 随时回复public class MainActivity extends InstrumentedActivity {//implements OnClickListener private Button mInit; private Button mSetting; private Button mStopPush; pr...原创 2019-01-11 16:41:36 · 110 阅读 · 0 评论 -
android 上拉加载 下拉刷新 动画listview/recyclerview
android 上拉加载 下拉刷新 动画listview/recyclerview首先本文用到的自定义recyclerview上传至https://download.csdn.net/download/qq_36355271/10910706请自行下载。xml写法:<view.cxrecyclerview.CXRecyclerView android:id="@+...原创 2019-01-11 14:08:07 · 385 阅读 · 0 评论 -
android 在adapter中更改Activity中的数据 (自定义接口)
注:本文通过自定义接口的实现,将adapter中的数据传入activity 已达到在adapter中刷新activity数据的过程,正文:一,在adapter中新建 接口并定义对象(apply_target_)public interface Apply_target_{ public void list_change(int pos,String value);}...原创 2019-01-10 17:29:31 · 2064 阅读 · 1 评论 -
Android OKhttp 封装get, post,put ,postjson,files等访问形式
前言:移动端开发工程师数目庞大,移动开发中网络访问是必不可少的环节;支持安卓访问网络的框架有很多。okhttp 也是现在比较常用的框架,它的封装性比较强,也支持多中参数结构的访问。今天主要说两个点 :1,,okhttp的使用 (Android studio中) 2,分享本人一直在用的封装文件。一,...原创 2018-12-27 11:31:38 · 1515 阅读 · 1 评论 -
android 自定义 画板 实现粗细,颜色,橡皮,撤销恢复等
转载请注明 出处:https://blog.csdn.net/qq_36355271/article/details/81698690自定义画板类:/** * Created by zjp on 2018/8/14. */public class TaletteViews extends View { private Paint mPaint; private...原创 2018-08-15 09:54:35 · 2389 阅读 · 5 评论 -
ANDROID 监听 home 键
第一步 注册系统广播registerReceiver(mHomeKeyEventReceiver, new IntentFilter(Intent.ACTION_CLOSE_SYSTEM_DIALOGS));第二步 建立广播接收器private BroadcastReceiver mHomeKeyEventReceiver = new BroadcastReceiver() { ...原创 2018-07-26 13:15:15 · 656 阅读 · 0 评论 -
Android 隐藏底部虚拟键
更新 新发现:android 4.4.4 直接(底部导航栏隐藏,切屏蔽了上划出现的问题) getWindow().getDecorView().setSystemUiVisibility(4108);但是在弹出软键盘或者拉下状态栏是还会出现 所以加了一个方法 禁止状态栏被点击(特殊需求才用到) CustomViewGroup view; Window...原创 2018-07-17 14:14:04 · 3279 阅读 · 0 评论 -
Android 禁用 home bank recent 屏蔽问题
返回键屏蔽非常简单: @Override public boolean onKeyDown(int keyCode,KeyEvent event){ if(keyCode==KeyEvent.KEYCODE_BACK) return true; return super.onKeyDown(keyCode, event); } home和...原创 2018-07-17 13:49:40 · 740 阅读 · 1 评论 -
android,java实现NanoHTTPD 轻量级 服务器
android,java实现NanoHTTPD 轻量级服务器 NanoHTTPD.java下载地址 https://download.csdn.net/download/qq_36355271/10478872下面用到的 HanoHTTPD可通过上面地址下载: 1,服务现实类: /** * Created by zjp on 2018/6/11. */这个类就...原创 2018-06-14 15:14:32 · 4372 阅读 · 10 评论 -
Android/java 把 list集合转为json 输出
1.Gson方法 (1)在build.gradle(Module:app) 中 添加 1 2 3 dependencies { implementation files('libs/gson-2.7.jar') } (2) 在project模式下,在该项目的libs目录下 导入 gson-2.7.jar 文...原创 2019-01-07 17:30:33 · 3019 阅读 · 0 评论 -
android 画虚线 以及部分手机不显示问题
一,<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="line" ><!-- 显示一条虚线,破折线的宽度为dashWith,破折线之间的空隙的宽度为dashGap,原创 2019-01-08 16:55:56 · 775 阅读 · 0 评论