Android相关
EddieTries
这个作者很懒,什么都没留下…
展开
-
Android升级minSdk之后,APK尺寸骤增
CSDN真的垃圾,我放一个Android官方网站的链接也认为是外链,纯纯的脑瘫原创 2022-11-18 10:53:03 · 1481 阅读 · 0 评论 -
Gradle同步工程下载依赖慢
最近在家里面学习Android的一些东西遇到了难题,Gradle下载的速度实在是太慢了,一直卡在downloading的状态。之前的build.gradle项目根目录下的依赖是用的是google(), jcenter()和mavenCentral()。经过排查,我的情况属于是从mavenCentral和jcenter下载的速度十分缓慢。解决方案也很简单,修改项目的build.gradle中的repositories的部分:repositories { maven{原创 2021-11-22 22:53:32 · 2516 阅读 · 0 评论 -
Android根据Locale获取String
在开发应用时,某些场景需要我们通过代码动态的获取string中的字符串,调用的context.getString()方法,这个方法返回的是默认的string.xml中的资源,如果用户切换了locale,那么这个方法返回的可能还是默认的语言。如何通过Locale来获取对应的string资源呢?获取LocaleLocale locale = Locale.getDefault();获取对应的字符资源public static String getString(Context context, int原创 2021-08-23 11:58:13 · 1694 阅读 · 0 评论 -
Android设置按钮为disable状态
前言本文介绍Android上如何设置按钮为disable状态。这个虽然很简单,但是我也是查询了才知道调用这个函数,很惭愧,Android相关的接触的较少,所以写下来记录下。方法在Button属性中,有setEnabled的方法,通过true和false可以控制enable和disable的状态。Button button = findViewById(R.id.button);button.setEnabled(true); // 启用按钮,默认状态button.setEnabled(false原创 2021-07-15 10:01:46 · 3637 阅读 · 0 评论 -
【Android】为项目设定Java语言等级
前言本文介绍如何为Android项目设定语言等级。使用过IDEA或者Eclipse的同学都知道,设定语言等级后,我们可以使用对应的语言等级的特性等,如使用lambda特性就需要设置Java语言等级为8以上。如何设置在AndroidStudio中,设置项目语言等级并不向IDEA等,在设置或者项目结构中可以设置。打开项目根目录下的build.gradle,在android下面添加compileOptions,如下:android { ... compileOptions { sourceComp原创 2021-07-06 17:36:05 · 814 阅读 · 0 评论 -
【Android】制作一个简易的画板
前言本文介绍使用Canvas、Paint、Path等原生API,实现一个简易的画板。绘图原理PaintPaint可以理解为我们现实中的画笔,在使用前我们需要对Paint进行初始化,比如颜色、画笔粗细、透明度等。为了让曲线更加的圆滑,我们也可以让Paint划出的内容做一些圆角处理等。下面是一个可以参考的Paint的初始化代码:// 使用抗锯齿模式初始化画笔Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);// 设定当前画笔的绘制模式,STROKE为画线原创 2021-07-05 19:35:58 · 1162 阅读 · 4 评论 -
【Android】getAction识别不到多指手势
前言本文主要讲解了getAction和getActionMasked的常用区别。背景在使用getAction作为事件的处理依据时,在多指手势时并没有识别到ACTION_POINTER_DOWN,后续改为getActionMasked之后可以识别到多指的手势。结论使用getAction可以获取到当前的交互信息,包括手指的index等;使用getActoinMaked主要返回触摸的信息,包括多指手势,没有index信息。参考Android Developer - MotionEventMoti原创 2021-07-05 17:28:24 · 334 阅读 · 0 评论 -
Android Looper详解
在Android下面也有多线程的概念,在C/C++中,子线程可以是一个函数, 一般都是一个带有循环的函数,来处理某些数据,优先线程只是一个复杂的运算过程,所以可能不需要while循环,运算完成,函数结束,线程就销毁。对于那 些需要控制的线程,一般我们都是和互斥锁相互关联,从而来控制线程的进度,一般我们创建子线程,一种线程是很常见的,那就是带有消息循环的线程。消息循环是一个很有用的线程方式,转载 2016-10-12 11:03:40 · 537 阅读 · 0 评论