- 博客(46)
- 资源 (6)
- 收藏
- 关注
原创 Android studio翻译插件,告别蒙逼
在学习Android的时候,我们经常都看看源码,看看调用方法的中文意思,好理解代码的使用。但是,英语四级考三次都没考过的我,每次都要百度翻译、谷歌翻译,很浪费时间。 今天终于看到了一个神器!!Android studio翻译插件!!这个是github上面有人发的开源插件,通过简单的导入就可以在Android studio使用啦~https://github.com/Skykai521/ECTran
2016-05-30 16:39:49 11932 2
原创 Android EditText InputFilter 和输入法联想功能冲突解决
最近遇到一个问题,当手机输入法有联想功能时,输入或者删除会出现奇怪的现象,显示的文本会比实际输入的更多。做了一系列排查后,发现这一行出现问题。通过在 InputFilter 的 filter 方法断点可以看到输入的文本多了一些 span。原来输入法联想功能会携带一些 span 实现联想效果,但是代码里将 source 进行了 toString(),移除了这部分 span,导致出现了冲突。找到问题后,解决办法也出来了。
2023-05-29 20:32:47 869
原创 【Android】Unable to instantiate fragment 解决方案
今天在 Bugly 上发现一个崩溃信息:Java.lang.NoSuchmethodException: could not find Fragment constructor。这问题有点意思,居然找不到 Fragment 的构造方法?Ctrl + Shift + F 全局搜索 Unable to instantiate fragment,发现抛出异常的地方反射无参构造方法,获取 Fragment 实例。再回头看 Bugly 上堆栈信息,发现了蛛丝马迹,在 Fragment 恢复保存状态的时候崩溃了
2021-07-09 23:55:19 6940 3
原创 Android studio 4.2 gradle task list 不显示的问题
升级 Android studio 4.2 后,发现 Gradle 窗口没有显示熟悉的 tasks,以往的 assemble、bundle 等 task 都找不到了。花了 一阵子,找到解决办法。打开 File => Settings => Experimental,取消勾选下图所示选项,然后点击 Sync Project with Gradle Files 同步后就会显示啦!最后效果,Task 都显示了:...
2021-07-08 23:19:39 829 1
原创 解决 android studio 3.5 格式化 xml 文件后 view 布局错乱的问题
android studio 3.5 修复了很多bug,体验上也流畅多了。但是有个不好的地方,xml 布局文件格式化后会将控件的位置打乱,导致视图显示有问题。解决办法打开设置,Editor => Code Style => XML => 点击右上方的 Set From => Predefined Style,然后选择 Android,保存即可。...
2019-09-09 22:31:15 880
原创 android 打包提示 Password verification failed
今天旧项目调整代码并打包时,提示Password verification failed。意思是密码验证失败,但我确定自己密码没输错。折腾了一段时间,clean project、rebuild,清除缓存并重启 android studio 都还是提示这个错误。最后我把主项目的 build 文件夹(在我这里是 app/build)整个删除,再打包后才成功。如果遇到这个问题,确定密码没错,可试试我...
2019-03-24 21:56:39 14302 8
原创 彻底明白编译型和解释型、动态语言和静态语言区别
编译型和解释型的区别先来看看编译型语言定义: 编译型语言首先是将源代码编译生成机器指令,再由机器运行机器码 (二进制)。再来看看解释型语言的定义: 解释型语言的源代码不是直接翻译成机器指令,而是先翻译成中间代码,再由解释器对中间代码进行解释运行。咋看一眼,还是一脸懵逼。下面打个比方:编译型相当于用中英文词典(翻译器)将一本英文书一次性翻译(编译)成一本...
2018-08-02 22:02:20 11957 6
原创 android 谷歌地图的图标翻页旋转效果
最近在看扔物线的 hencoder 自定义 view 系列,有个图标翻页旋转效果很炫酷。自己思考加上看了位大神的思路,总算做出来了。(GIF 录制的有点卡,真实效果可以自己运行查看) 思路整体由三个属性动画构成。首先把整个图标平均分成两部分,一部分先向上翻折(最开始的动画)称为 a 半边;另一部分最后向上翻折(最后一个动画)称为 b 半边。第一个动画:使用 camera 3d 动...
2018-08-02 21:58:51 1166
原创 AndroidStudio preview 不固定的解决办法
前阵子用 AndroidStudio,不知道点错了什么按钮,preview 视图窗口不是固定在一侧。只要点击 xml 界面,就隐藏了 preview 窗口,根本开发不了。找来找去,发现设置处没有docked mode属性。网上找了很多资料,才解决了。办法如下: 1. 点击preview,显示视图窗口; 2. 点击菜单栏的window; 3. 选中Active Tool Window;...
2018-08-02 21:57:39 1163
原创 Android commit 和 commitAllowingStateLoss 的区别
fragment 基本上是每个项目都会用到,一般我们会这么写: getSupportFragmentManager() .beginTransaction() .add(R.id.fragment_container, new MyFragment()) .commit();但是有时候会报如下错误信息:...
2018-08-02 21:56:19 2066
原创 android 解决系统字体大小设置引起的布局混乱问题(两种方法)
在手机系统设置中,若是修改了字体大小,会影响 app 内字体显示,导致布局混乱不齐。有两种方法,一般推荐第二种方法。 方法一:字体大小单位使用 dp,而不是使用 sp。注意在 java 代码中需要用 dp 方式显示。默认是使用 sp。 tv.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 30); // 注意!!是TypedValue....
2018-04-02 18:53:25 3854
原创 android shrinkResources 设置为 true 无效的原因
在打包时使用了如下,对项目进行代码和资源文件的缩减。minifyEnabled true // 代码混淆,代码缩减。shrinkResources true // 资源缩减不过在用APK Analyzer(没用过可以看 Android apk 分析工具:APK Analyzer)分析打包后的 apk,发现没使用的图片依旧打包进 apk 了。shrinkResources 设置为 ...
2018-04-01 13:06:05 2341
原创 java 枚举类 getClass和getDeclaringClass的区别
在使用枚举类的时候,建议用getDeclaringClass返回枚举类。但是为什么不用getClass呢?下面来看看代码: public enum FruitEnum{ BANANA,APPLE; public static void main(String[] args) { System.out.println(BANANA....
2018-03-26 22:03:54 8446
原创 android TextView 设置和取消删除线
一、TextView 设置删除线有两种方式:(推荐)方式一:通过按位或运算符|,将 TextView 原本的 Flags 属性和删除线一块设置。setPaintFlags内会对 TextView 进行重绘。 tv.setPaintFlags(tv.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);方式二:获取画笔后设置属...
2018-03-26 22:01:35 2590
原创 android APP 跳转到应用商店评分
闲话少说,直接上代码/** * APP 工具类 * * @author chenxuxu * @date 2018/2/10 * */public class AppUtils { /** * 跳转到应用商店评分 * * @param context * @param myAppPkg * @param shopPk...
2018-03-26 22:00:06 1293
原创 Android之CardView的使用
介绍android5.0 发布了新的设计语言:Material Design。而卡片布局 CardView 是 Material Design 风格的其中一个控件。卡片控件是一个详细信息的入口点,卡片控件可能包含有关单个主题的照片,文字和链接。 需要注意的是,单个卡片布局内放置同个主题的内容,不可滥用卡片布局。谷歌在 Material Design 的说明中,标记出什么情况才需要使用 CardVie
2017-07-10 23:00:40 984
原创 学Android Space控件,只看这篇文章就行了
Space is a lightweight View subclass that may be used to create gaps between components in general purpose layouts. Space 是一个轻量级的 View 子类,可用于在通用布局中的组件之间创建间隙。介绍Space 经常用于组件之间的缝隙,其draw()为空,减少了绘制渲染的
2017-07-08 18:04:51 11370
原创 Android apk 分析工具:APK Analyzer
前言Android studio 2.2 版本后自带有一个分析工具:APK Analyzer。这是一个专门分析 apk 的神器,主要作用如下: 1. (重要) 直观的看到 apk 中各个文件的大小 (比如 DEX,resource 等等)。我们可根据文件大小信息,减小 apk 的大小; 2. (重要) 学习大企业 app 的命名规范和目录架构规范,还可以查看大公司 app 使用了什么技术和第三方
2017-04-06 00:12:18 12595
原创 英文文章出现TL;DR是什么意思
在阅读英文文章时,偶尔会发现有小标题显示 TL;DR 或者 tl;dr。网上英文解释有两种,一种是Too long;Don't read,另一种是Too long;Didn't read。意思是:“文章太长了,读不下去了”。常用在英文长文中的摘要标题,显示整篇文章的 精华 或 总结 。
2017-04-04 10:03:04 25378 2
原创 Android studio修改项目名
在 Android studio 修改项目名,会弹框显示can't rename root module,不允许修改根 module。但是项目名确实需要修改,难道要用最笨的方法——复制粘贴代码到另一个正确名称的项目?不不不,一定有解决办法:关闭 Android studio,在电脑目录中跳转至该项目路径,修改项目名称;打开 Android studio,导入换名后的项目;将[旧名称].iml改
2017-04-04 09:30:29 4301
原创 java 链式调用
前言现在很多开源库或者代码都会使用链式调用。因为链式调用在很多时候,都可以使我们的代码更加简洁易懂。以下 Student 类有多数个属性,让我们看看非链式调用和链式调用有何区别。非链式调用Main 类: /** * Created by chenxuxu on 17-1-10. */ public class Main { public static
2017-04-03 11:00:33 14966 2
原创 用百度API高仿微信定位demo
前言demo 使用 Android 地图 SDK v4.1.1。 解决 android6.0 以上定位失败的问题(定位到非洲或者大海的问题)。先放个效果: 配置首先要在百度地图,先下载需要的包:基础定位、基础地图和检索功能。下载然后按照官方介绍如何使用百度地图 API。 android 地图 SDK android 定位 SDK 里面介绍的很详细,需要仔细观看每一行介绍。 申请密钥,
2017-01-03 17:28:40 3281 5
原创 Mac 下,用别名给你的命令行瘦个身
作为一名有逼格的程序员,命令行总是我们的好朋友。但是有一些命令又长又臭,有些路径名总是不小心敲错,有些英文单词老是记错… 有什么方法简化呢?方法就是:别名。众所周知,在 git 中有别名的存在,可以简化 git 的命令(不用记单词)。同样,平时的命令行也可以用别名。方法打开终端,输入ls -a找到目录下的.bash_profile文件,再输入vim .bash_profile进去添加设置的别名 (
2017-01-02 15:31:28 1272
原创 Mac下,git忽略.DS_Store文件
在 Mac 环境下,使用 git 的时候,总会在git init后,突然跑出来几个文件,例如.DS_Store。我们不需要将它提交上 github,但是放着不管,又辣眼睛。肿么办呢?很简单,我们把它忽略掉就行了。方法:命令行中,进入该目录。输入touch .gitignore创建.gitignore文件 ;输入vim .gitignore, 进入文件内(不会 vim 操作的,自己去查找用法)。输
2016-12-27 23:42:36 5937 1
原创 百分比转换成十六进制
在很多时候,可能我们都需要使用百分比转换成十六进制。例如设计师们的设计稿上经常出现的透明度百分比。 先列出全部百分比对应的十六进制值,下面有具体的计算代码。 百分比:0% , 十六进制值:00 百分比:1% , 十六进制值:30 百分比:2% , 十六进制值:50 百分比:3% , 十六进制值:80 百分比:4% , 十六进制值:A0 百分比
2016-10-23 23:12:58 13012 2
原创 为AndroidStudio设置自定义类注释
我们在使用 eclipse 的时候,只要在类上面输入/**再按 enter,就会出现类注释。 package com.demo; /** * * @author chenjunxu * */ public class Test { }在 AndroidStudio 里,在类上面输入/**再按 enter,就跟普通的注释没有区别。A
2016-10-20 02:02:04 7745 3
原创 android App设计的工具+灵感
我个人认为,每个程序员都要学会一些设计。就例如我是 android 开发工程师,那么我通过一些简单的设计,就可以做出自己的项目发布到网上。以下是我接触过认为不错的网页工具,可以辅助我们设计 android 应用软件。 大家如果有更好的网页工具,可以在评论中推荐。此博客会持续更新。1. 阿里巴巴图标库(超级好用,可以换图标颜色和大小) 对于设计一个 app 来说,图标是最难找,也是最难设计的。阿里
2016-10-18 20:49:11 1269
原创 Android欢迎页面闪屏解决方法
前段时间,在开发项目时发现打开欢迎页面会闪一下黑色,再显示欢迎页面。我的主题背景就是黑色的,估计是主题的问题。 下面做了个demo,是有闪屏的欢迎页面: 下面是WelcomeActivity的代码:/** * 欢迎页面 * * @author chenjunxu * @date 2016/6/8 */public class WelcomeActivity extends AppCo
2016-06-09 15:06:21 5108 1
原创 Android webview显示net::ERR_PROXY_CONNECTION_FAILED解决方案
这段时间一直用手机连接WiFi测试APP,但是一直打不开webview的网页内容。一直显示net::ERR_PROXY_CONNECTION_FAILED如果变成了手机4G流量就可以打开。一直以为是网络问题,结果发现是我把WiFi设置成代理了。 解决方法:取消WiFi的代理。 打开手机的设置—>在连接的WiFi将代理设置成无。
2016-06-05 13:30:53 25694
原创 最快速建立Android项目的JavaBean实体类
在Android studio里有一个插件,可以将json数据复制过去,立马生成JavaBean实体类的内容。这对于开发很方便!!插件的使用请看下面的git链接(链接里面有写如何添加插件):https://github.com/zzz40500/GsonFormat
2016-04-09 12:57:02 2292
原创 谷歌浏览器显示一直加载的解决方法
今天,谷歌浏览器无缘无故就出问题了。一直显示“一直加载”~无论打开什么页面,谷歌浏览器都显示一直加载0.0但是打开IE浏览器或者火狐浏览器都没事,可以正常打开网页。百度了一下,挺多热爱谷歌浏览器的朋友都遇过这个问题。网上查了一下,自己也尝试了一下,发现了一个解决办法:(我一开始是把谷歌浏览器设置成默认浏览器的)我先把火狐设置成默认浏览器,然后打开谷歌浏览器,就可以正常上网了!!!然后再把谷歌浏览器设
2016-04-03 21:29:12 20517
原创 Android studio最简单的更新方法
最近在学着用Android studio,但是发现我现在的版本是比较旧的,即使8G内存,用起来还是有点卡,敲代码都没有感觉了。于是,百度了一些,怎么更新。有些人说,去网上下载jar包,进行增量更新。花了很久时间下载,但是最终还是没有更新成功。东找找,西找找。发现了一个最简单的方法:1.在Android Studio安装目录/bin/studio.exe.vmoptions文件中追加以下三行内容:-D
2016-04-03 16:00:01 1064
原创 查看Android 各种API版本占据当前市场的比例
对于Android开发,有时候想兼顾一些低API版本手机的功能,例如之前兼容到Android 2.3。但是有时候,有些功能确实很难实现,为了兼容只好把功能变动一点。那如果我想看看,Android各种API版本占据市场比例的情况呢?其实很简单,Android studio自带有这个功能。1.打开Android studio; 2.新建一个Android项目,在最后一个页面,也就是下面这个页面,点击蓝
2016-04-01 14:01:46 6640
原创 Eclipse打印Java的char默认值,出现方框原因
众所周知,Java为char赋值默认值(只有成员变量才会赋值,对于局部变量,不会有默认值),默认值就是’\u0000’。但是,我在Eclipse打印char默认值时,Eclipse的console显示结果为一个方框。这是为什么呢?难道char的默认值不是’\u0000’?难道各种Java书联合起来“调戏我”?再接下去试试。结果为true,证明那个方框就是’\u0000’。但是,为什么Eclipse显
2016-03-27 14:54:49 4629
原创 自定义对话框两边有间距问题
一般我们自定义对话框,都会设置如下的style属性: <style name="MyDialogStyleBottom" parent="android:Theme.Dialog"> <item name="android:windowFrame">@null</item> <!-- 边框 --> <item name="android:wind
2016-01-26 20:41:54 4143
原创 Android:可复制内容的TextView、EditText
可复制内容的TextView、EditText有时候我们做app的时候,想要让用户可以复制一些文本内容。此时,网上有一些自定义TextView可以实现该功能。但是,不免有点麻烦。其实,直接设置xml属性就可以实现该功能。xml代码效果图属性说明xml代码:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/andro
2016-01-22 15:44:53 6180
原创 分治法算法——归并排序
分治法算法中的经典——归并排序上一节,我讲了分治法的相关思想,并贴出数字旋转方阵的代码以及解决思想。算法的话,主要还是要靠自己领悟,要多思考,不会再去看看别人的思路。以下,我分析一下分治法算法中的经典——归并排序。下面举个例子: 有个int数组,元素为{1,6,2,7,4,9} 首先,我们先将整个数组分解,分解成一个个规模大小相同的子问题,直到只有一个元素(图中第四行)。现在,我们再进行合并
2016-01-21 10:36:11 1134
原创 算法——分治法讲解
分治法分治法是一个很有趣的算法方法。 分治法的思想很简单,就是将问题分成多个规模大小一样的子问题。这种做法是出自一种平衡子问题的启发思想。 然后这么多个规模大小一样的子问题就可以通过递归进行求解。下面举个小例子:例如:现在要求3的4次幂。 蛮力法的思想:3*3*3*3 分治法的思想: 可能说起来比较抽象。我下面给出几个例子的代码,通过观察你就会慢慢知道分治法的思想核心和使用它了。数字旋转方
2016-01-20 17:49:18 1055
原创 Android广播机制完美讲解
Androd广播机制广播机制的简介动态注册监听广播&详细代码静态注册监听广播&详细代码广播机制的简介Android有四大组件:Activity(活动)、Broadcast Receiver(广播接收器)、Content Provider(内容提供者)、Service(服务)。其中,Activity主要是用于页面的显示,也是我们最常用到的。Broadcast Receiver主要
2016-01-18 20:56:55 1301
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人