- 博客(40)
- 资源 (3)
- 收藏
- 关注
原创 android 实现播放视频画中画功能遇到的问题点
Android 8.0 Oreo(API Level 26)允许活动启动画中画 Picture-in-picture(PIP)模式,我就是采用官方api模式实现,还有一种实现方案采用的是window方式,我项目里采用的是第三方播放器感觉用window方式实现困难了些不好衔接。2 切换画中画模式变成小屏后 页面会自动回到上一个页面,但是这个页面的布局会乱,页面控件变大了,一开始我以为是我引用的AndroidAutoSize 适配框架的原因 ,他们有冲突毕竟这个框架是全局适配的,后来发现不是。
2024-08-22 15:46:23
489
原创 android 自定义view path路径设置圆角
这个api使我从挣扎中解脱,这个属性对于绘制多变型 或者 不规则路径 制作圆角非常好用,也查过其他方法 什么贝塞尔曲线等感觉很复杂。CornerPathEffect 官方意思是将Path的各个衔接线段之间的夹角用一种更滑润的方法衔接,类似于圆弧。在绘制path 闭合路径的时候,路径的连接点都是直角,如果设置成圆角可以直接使用下面api。
2023-09-15 11:25:53
433
原创 Android Html.fromHtml()里面的超链接颜色修改
在安卓里第一次启动都要弹窗隐私提示的弹框,一般做法就是一段写在本地的html代码用Html.fromHtml()去加载,然后超链接可以点击。Android Html.fromHtml()里面的超链接颜色修改。隐私政策和用户协议的链接默认是蓝色的,在html代码里加了几种修改。可以采用设置setSpan的方式进行修改,比如设置红色。最终都没起作用还是默认的蓝色。...
2022-08-26 11:36:22
871
原创 android广播接收不到的一个问题
接手的一个项目发现在回调后发送了一个广播sendBroadcast(new Intent(“xxxxxxxxx”));在接收的地方怎么都接收不到,原来的接收用的注册广播代码LocalBroadcastManager.getInstance(activity).registerReceiver(receiver,intentFilter);用LocalBroadcastManager进行注册的广播,发送也必须用LocalBroadcastManager进行发送才能正常收到LocalBroadcast
2022-05-06 09:18:22
2171
原创 安卓项目编译出现javax.xml.bind.JAXBException的错误
项目场景:android studio升级到了最新白狐版 项目编译出现了很多错误,项目比较老都不是androidX工程一路解决下来最后一个错误是 Unable to load class ‘javax.xml.bind.JAXBException’. This is an unexpected e解决方案:说是不能加载javax的包 由于studio最新版本下载自带了一个jdk是11的版本然而JAXB API是 Java EE 的API。Java 9 及其以上版本引入了模块的概念,至此 Java
2021-12-10 17:11:45
4547
2
原创 android 编译程序出现的 More than one file was found with OS independent path ‘lib/x86/xxx.so‘ 错误
android 编译程序出现的 More than one file was found with OS independent path ‘lib/x86/xxx.so‘ 错误这个错误是我在引用一个第三方库的时候出现的,代表是本地的已经引用的第三方库和您新引用的第三方库都引用了xxx.so,在编译的时候就不指定已哪个为主了。解决办法在android/app目录的下的build.gradle文件的android{}中添加下面一行配置 packagingOptions { pickF
2021-07-02 13:13:59
537
原创 在Android7.0及以后的系统中,安装证书,并且让APP信任我们手工导入的CA证书
在Android7.0及以后的系统中,安装证书,并且让APP信任我们手工导入的CA证书Android 6.0 (API level 23)以后,APP默认只信任系统自带的CA证书,对于用户导入的不在信任以小米手机为例:[1] 在你的Android项目的res文件夹下创建xml文件 xxx.xml<?xml version="1.0" encoding="utf-8"?>&l...
2019-12-30 16:27:25
11963
2
原创 ImitatioRrecyclers 一个简单通用的recycleView
##封装一个通用的recycleView##突然想对recycleView进行一次整体的封装,放入到项目中来使用,首页为什么要对它进行封装呢,因为做app用到最多的控件是什么?那就是列表,一个app多到几十上百个列表页是正常的,但是每个需求的列表可能存在一些差别比如1 这个列表需要添加个头部,常见添加轮播图等 2 ...
2018-06-13 19:00:20
435
原创 Android Activity 跳转使用共享动画加载网络的图片
使用textView 显示服务器返回html实现图文混排,并且显示html里的img标签图片,点击图片可查看大图,并且支持手势收缩,查看大图activity跳转使用共享动画 把需要做的功能点列出使用TextView显示html(使用Html.fromHtml)显示html里的图片(重写ImageGetter,Glide显示图片)点击图片可查看大图(重写TagHandler如果是img标签...
2018-05-04 17:56:49
1245
原创 SharedPreferences更改数据后取出来的值没有更改的问题
SharedPreferences 取值不正确开发中每次登录成功后都会获取一个服务器返回的Token,退出后再重新登录Token的值就会变化我发现在一个activity中每次获取的都是上一次的值,也就是退出在登录后在这个activity中获取的值还是上一次保存的值,这样就导致出现了bug,而其他activity读取都没有问题经过搜索一番发现我设置的SharedPreferences的m...
2018-03-08 11:24:49
5056
1
转载 ConstraintLayout约束布局的概念与使用
ConstraintLayout(约束布局), 是2016年Google I/O最新推出的Android布局, 目前还在完善阶段. 从推出的力度而言, 应该会成为主流布局样式. 在最新版本的Android Studio中, ConstraintLayout已经成为默认布局.使用ConstraintLayout布局的最新版本1.0.0-alpha4, 需要下载最新Canary版本的Andro
2018-01-22 17:02:57
359
原创 记录一次给recyclerview item点击添加水波纹反馈效果没起作用的问题。
记录一次给recyclerview item点击添加水播放反馈效果没起作用的问题。recyclerview 默认是点击没有效果的,不像listview在5.0以上系统上点击默认会出现水波纹效果。要给recyclerview 点击添加触摸反馈效果在item布局上加入android:background=”@drawable/ripple_orange但是当我加入这个背景时点击却没有效果,长按会出
2017-10-27 10:25:54
2142
原创 既使用startService,又使用bindService
什么情况下既使用startService,又使用bindService呢?如果你只是想要启动一个后台服务长期进行某项任务,那么使用startService便可以了。如果你还想要与正在运行的Service取得联系,就可以使用bindService,那么取得联系肯定是要service里面的数据或调用里面的方法,总之是为了通讯,怎么用呢?看下面场景。比如做下载功能需要启动一个Service来做后台下载,
2017-09-01 15:14:12
878
原创 okhttp java.lang.IllegalStateException: cache is closed
java.lang.IllegalStateException: cache is closed我在用okhttp请求时出现了此异常,在华为6.0系统上必现,在小米5.0系统上不会出现 .暂时没有更多手机测试.复现步骤编译好程序后首页加载完成后再进入任何一个有网络请求的页面就会出现然后闪退,再重新打开app就不会出现,去设置里清除数据后,又会出现,也就是安装此程序后(运行正常),却设置里清除数据
2017-08-29 16:39:02
3286
9
原创 Android ToolBar的meun自定义位置遇到的几个坑
Android ToolBar的meun自定义位置遇到的几个坑。ToolBar弹出的meun默认位置是覆盖是覆盖在ToolBar上的。需要自定义style toolbar的默认style是Widget.AppCompat.Light.PopupMenu.Overflow,所以我parent继承默认style对其进行修改。 <!--Toolbar弹出层样式 --> <style name="O
2017-06-29 14:12:31
692
原创 Android 设置颜色值的透明度
00-FF 00是全透明 FF是不透明,要设置透明度百分之30 百分之40 百分之70等 该怎么设置呢,看下图。透明度16进制表示100%0095 %0D90 %1A85 %2680 %3375
2017-06-14 15:38:03
1209
原创 解决使用multidex分包后找不类的问题
1 Android方法id的数目不能够超过65536个。超过后官方提供multidex方案来解决,怎么解决这里不说了 studio配置很简单,并且android sdk5.0自带multidex。2 我在使用multidex后有的手机启动闪退,是找不到一个第三方库里的一个类。是因为这个类被分到了第二个dex,那么就必须自己制定类的分包,下面直接写解决办法。 在build.gra
2017-02-28 18:27:06
4423
3
原创 如何获取color.xml配置文件中的值。
有个功能其中一步需要获取color.xm配置文件中的颜色值 getResources().getColor(R.color.first_theme) 这个方法返回的int值不是#xxxxxx 而是个id值。为了这一个步骤又不想写很多代码解析xml 用下面的这种方式可以获取:String themeColor = "#"+Integer.toHexString(getResource
2016-11-29 16:23:05
4159
2
原创 Android 6.0 ProgressBar 自定义动画不显示问题
if (android.os.Build.VERSION.SDK_INT > 22) {//android 6.0替换clip的加载动画 final Drawable drawable = context.getApplicationContext().getResources().getDrawable(R.drawable.liveing_anim_60); holder.li
2016-10-09 16:37:25
2969
4
原创 Android 监听软件盘关闭的两种方法。
自定义一个布局public class ResizeLayout extends RelativeLayout { public ResizeLayout(Context context) { super(context); } public ResizeLayout(Context context, AttributeSet at
2016-07-18 18:30:53
1579
转载 Android 6.0 的运行时权限
Android 6.0,代号棉花糖,自发布伊始,其主要的特征运行时权限就很受关注。因为这一特征不仅改善了用户对于应用的使用体验,还使得应用开发者在实践开发中需要做出改变。没有深入了解运行时权限的开发者通常会有很多疑问,比如什么是运行时权限,哪些是运行时的权限,我的应用是不是会在6.0系统上各种崩溃呢,如何才能支持运行时权限机制呢。本文讲尝试回答这一些问题,希望读者阅读完成之后,都能找到较为完美
2016-07-01 11:57:24
500
原创 andoid studio 运行项目 finished with non-zero exit value 1 错误
编译不报错 运行项目出现下面错误 transformClassesWithDexForDebug'. com.android.build.api.transform.TransformException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concur
2016-04-27 18:24:27
998
原创 Android 5.0 Material 自定义Dialog 背景 字体大小颜色 ui组件颜色
使用Material主题 设置dialog背景颜色不能使用 @android:color/transparent 需要使用@color/white true @color/huang3_new @color/hei_49 @color/white 16sp
2016-04-22 10:13:46
6234
原创 Android 5.0 Material主题 ProgressBar颜色更改。
Android L的ProgressBar 默认效果就非常好,看了网易新闻 在5.0 和4.4上分别装入网易新闻app 发现网易用的ProgressBar就是默认样式,但是在两个版本上显示不同。搜索了很多资料都是引用个android:indeterminateDrawable="@drawable/xxx"自定义文件,引用这个文件后ProgressBar 颜色是变了但没有5.0的效果了,所有更
2016-04-18 10:55:11
11558
转载 Glide - 开始!
Glide,就像 Picasso,可以从多个源去加载和显示图片,同时也兼顾缓存和在做图片处理的时候维持一个低内存消耗。它已经在 Google 官方 APP (如 Google 2015开发者大会的应用程序)中使用了,就和 Picasso 一样受欢迎。原文连接:http://mrfu.me/2016/02/27/Glide_Getting_Started/
2016-03-17 13:36:07
350
转载 Android代码内存优化建议-Android官方篇
为了使垃圾回收器可以正常释放程序所占用的内存,在编写代码的时候就一定要注意尽量避免出现内存泄漏的情况(通常都是由于全局成员变量持有对象引用所导致的),并且在适当的时候去释放对象引用。对于大多数的应用程序而言,后面其它的事情就可以都交给垃圾回收器去完成了,如果一个对象的引用不再被其它对象所持有,那么系统就会将这个对象所分配的内存进行回收。我们在开发软件的时候应当自始至终都把内存的问题充分考虑
2016-03-02 11:54:30
354
原创 高德地图6.0系统上崩溃的问题
使用高德地图sdk显示地图发现在android6.0系统上崩溃,初始化map时报java.lang.NoClassDefFoundError: org.apache.harmony.security.pkcs7.SignedData 异常,而demo运行却没问题,找了很久发现跟腾讯IMsdk冲突,腾讯IM在Application里初始化的,初始化后高德地图就用不了。 解决办法把地图初
2016-03-02 10:21:07
3793
原创 给一个view添加旋转动画,并且停止后保持旋转角度,恢复后可继续旋转。
RotateAnimation这个动画类 animation.setFillAfter(true);方法是在动画自动停止后保持原位,而手动停止调用clearAnimation()后旋转的控件会变成最开始的位置,想到的解决方 法是让动画旋转30度 利用handle不断的发送消息 当点击停止后取消发送消息,不是很好的解决办法。 经过查找资料发现 ObjectAnimator属性动画
2016-02-24 18:10:00
5998
3
原创 实现瀑布流功能解决view复用造成的item高度变化问题。
实现瀑布流列表我用了AndroidStaggeredGrid这个控件,可以在github搜索下载,当然给它加上PullToRefresh实习下拉刷新和加载更多功能,由于服务器返回的图片同时也返回了图片的宽度和高度,每一张图片的高度不一样,必须实现等比绘制,可以用AndroidStaggeredGrid里的DynamicHeightImageview这个控件。 由于适配器的getView有复
2015-11-19 11:26:44
3017
原创 关于魅族手机调用系统相册剪裁页面无法载入图片的问题。
调用系统相册后选择相片 然后调用系统剪裁页面 发现别的手机都好使 魅族到剪裁页面一直处于加载中相片显示不出来,后来研究后发现选择相片后我把相片设置到了自定义文件夹,魅族手机读不出来,这样的话选择相片只能读取相片本身所在图库的路径进行剪裁。修改前: /** * 选择图片 */private void startActionPickCrop() { Stri
2015-11-02 14:03:28
4646
原创 ViewPager禁止滑动已经去掉默认的滑动效果。
最开始做的整个页面都可以滑动类似微信,但后来首页改版,frament内的滑动效果太多,就要去掉整个activity的滑动效果,但是想改起来快一点,就想到把viewpager滑动效果禁止掉,只能点击选择,上网一搜还真有并且很好用就推荐下。但是点击选择后还有滑动的效果,后来就想把viewpager的滑动动画去掉,搜了搜没找到,后来发现把滑动的切换时间可以改成不需要切换时间,这样就ok了,下面是源码。
2015-07-06 13:12:45
2331
原创 关于android4.4外置sd卡读写
下载文件到外置sd卡 4.4之前都没有问题,在4.4系统机器上不能下载了,搜素资料一番说4.4系统不能再往sd卡写入文件了,但内置sd卡不受影响。 WRITE_EXTERNAL_STORAGE只为设备上的主要外部存储授予写权限,应用程序无法将数据写入二级外部存储设备,除非指定了应用程序允许访问的特定的目录。
2014-09-03 15:44:09
892
原创 android 外置sdcard与内置sdcard
android现在出机器基本上都有两个内存卡,但是如果想把下载的东西下载到外置sdcard中,必须要获得外置sdcard的路径。Environment.getExternalStorageDirectory().getPath() 这个方法只能获得内置sdcard的路径外置sdcard的路径根据不同机器路径也不相同,经过查找资料找到一个方法,实现了功能。StorageManager s
2014-07-02 17:48:48
701
原创 关于dialog的Unable to add window -- is your activity running异常解决。
有的公司不用第三方的,自己做升级功能,我在MainActivity里弹出升级对话框,由于要和服务器通信,确定需要升级时才弹出对话框,在网速慢的情况下,你一进应用在升级对话框弹出前退出或马上退出 在应用退出后,就会出现Unable to add window -- is your activity running此异常,虽然不影响使用,但体验不好,是因为dialog需要一个activity载体,我在
2014-03-26 10:06:31
939
Android L特性练习工程。
2017-05-17
利用高德地图仿微信发送位置和百度外卖更多位置功能。
2016-02-24
viewpage轮播图效果
2014-12-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人