Android
ALee_130158
这个作者很懒,什么都没留下…
展开
-
用Activity实现弹窗
其实用dialog是最方便的,但组长说不想在一个Activity里写太多代码,原来的代码已经很乱了。。。没办法,前人留下的代码的确有点多,新加的只能在另外的Activity里写了,而且,它在这个弹窗里加的操作也太多了吧,有谁会在一个弹窗里又加列表,又加viewPager又加按钮的?咱也不敢说,咱也不敢问。业务逻辑这里就不写了,简单记录一下自己用Activity实现的弹窗效果吧。其实大家都是窗口...原创 2020-04-02 20:22:56 · 892 阅读 · 0 评论 -
SpanableString 一些常用方法的使用记录
最近登录页要给个什么隐私政策的提示,蓝白下滑线混合在一起,因为不想写几个TextView(主要是单个TextView会换行不好看),所以用了SpannableString,顺便就跑来这里记录一下一些比较常用的实现后续操作都是在这个基本代码的基础上写的TextView tvMessage = (TextView) findViewById(R.id.tvMessage);Spannabl...原创 2020-04-01 18:13:33 · 481 阅读 · 0 评论 -
android file.mkdir()一直返回false问题
今天想写本地日志,结果写文件的时候一直失败,报FileNotFound错误,很明显,就是文件创建失败的问题了,debug了一下,发现在file.mkdirs()就出问题了(这个方法相对file.mkdir()还多了检测是否存在,偷懒必备),检查了一下,发现权限都没有问题,跑去developer看一下,发现现在不能直接用这个来创建路径或文件了...原创 2020-03-19 20:21:31 · 2605 阅读 · 0 评论 -
一个简单的滑动显示demo
之前无聊的时候写的一个滑动demo,用的是根据滑动距离计算位置重新布局的方式,在这里分享一下话不多说,先上效果图可能看上去有点卡顿,其实是我主要是想表达拉到一点点,然后松开,可以直接恢复下面就是上代码了基类package cn.ALeeCJ.learningproject;import android.app.Activity;import android.os.B...原创 2020-03-06 17:31:08 · 349 阅读 · 0 评论 -
调用startActivityForResult后直接产生onActivityResult回调问题
之前遇到调用startActivityForResult后,即时我跳转界面还没有返回,还是几乎调用startActivityForResult后马上就调用onActivityResult的情况,在网上找了很长时间的解决方法,都没有什么效果,自己思考后想了两个方案,一个是重写onResume方法,一个是判断当前应用是不是出于foreground(因为我是跳转其他应用的),今天突然又写了一次调用其他a...原创 2020-01-14 13:58:56 · 1349 阅读 · 1 评论 -
Android 统一support版本,解决版本冲突
configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> def requested = details.requested if (requested.group == 'com.android.support') { ...原创 2020-01-03 17:19:25 · 753 阅读 · 0 评论 -
Android部分手机报 解析包时出现问题 原因与解决方法
首先,部分手机,尤指华为手机,特别是最近华为很多手机都开始升级上Android10,问题爆发尤其之多,在这主要讲一下跳转安装界面,然后报 解析包时出现问题 的几个原因和问题解决方法。说明一下,我用到跳转安装的方法是比较大众的,就是低版本就直接uriFromFile,AndroidN以上就用FileProvider的方式,这个方法网上一搜一大堆,我就不多说了。原因1.安装包不存在很坑的一个地方...原创 2020-01-03 14:57:39 · 7651 阅读 · 1 评论 -
Android 5G判断
之前需要用到5G网络信息,花了很长时间才去研究怎么判断是否是5G信号,但无论是官方说明的CellInfoNr,CellIdentityNr,CellSignalStrengthNr,最后连一个网络连接callback都用过了,在华为mate30 5G版上拿到的都是LTE(13),真的是心态爆炸。一次偶然的机会看到ServiceState类,发现它有一个getNrState的方法,查了一下,返回...原创 2019-11-22 14:45:34 · 4154 阅读 · 14 评论 -
Android问题记录1:悬浮窗问题
一般用到的方式是WindowManager mWindowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);//获取WindowManagerWindowManager.LayoutParams wlp = new WindowManager.LayoutParams();//悬浮窗参数,悬浮窗显示后变...原创 2019-11-15 16:02:39 · 285 阅读 · 0 评论 -
Android多module初始化application
开始之前,顺带提一下一个小知识,那就是:在Application里,attachBaseContext()方法的执行顺序是在onCreate()之前的下面开始说明Android中,多个module是怎么初始化application,让module的application拥有实例的。方法说起来很简单,就是使用反射。因为软件打开的时候,只会初始化主工程的application(打开主工...原创 2019-09-11 10:15:46 · 3212 阅读 · 3 评论 -
Android简单动画小记
只是单纯的记录一下简单动画的其中一种实现方式首先,在anim文件夹创建动画xml文件,例如show.xmlshow.xml内容<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android" android:durat...原创 2019-08-07 17:55:25 · 343 阅读 · 0 评论 -
ListView和ScrollView嵌套解决滑动冲突问题
首先,说明一下,我这里的ListView和ScrollView都是上下滑动的,如果是左右滑动,虽然差距不大,但就不能直接生搬硬套了。1.解决ListView和ScrollView嵌套滑动冲突问题当ListView放在ScrollView的布局中间,直接实现ListView的setOnTouchListener就可以了listView.setOnTouchListener(new Vi...原创 2019-07-04 17:42:42 · 2196 阅读 · 0 评论 -
ListView,ScrollView嵌套滑动冲突问题,子view包含EditText等
之前写过ListView和ScrollView嵌套滑动冲突问题,最近刚好遇到ListView的子View包含可以获取焦点的情况,这种情况下只是单纯的给ListView设置onTouchListener会经常失效,也就是滑动冲突重新出现了。经过同事提点,我自己也测试了一下,解决滑动冲突的成功率果然提高了很多,话不多说,赶紧分享一下。最开始解决冲突的方式:listView.setOnTouc...原创 2019-07-08 14:38:58 · 228 阅读 · 0 评论 -
最低级的检测二次打包方法,通过SHA1
//这个是获取SHA1的方法 private static String getCertificateSHA1Fingerprint(Context context) { //获取包管理器 PackageManager pm = context.getPackageManager(); //获取当前要获取SHA1值的包名,也可以用其他的包名...转载 2019-06-18 17:19:57 · 521 阅读 · 0 评论 -
检测设备是否为模拟器,是否root,禁止截屏
下面的方法基本上都是网上找回来的,全部亲测可用,但部分来源已不可查,记得的都已经加上转载链接1.检测设备是否为模拟器public static boolean isEmulator(Context context){ Context baseContext = context.getApplicationContext(); String url = "te...转载 2019-06-11 16:29:38 · 3036 阅读 · 0 评论 -
ScrollView包裹ExpanableListView显示不全问题,简单有效的解决方法
最近需要搞一个三级菜单,最开始是打算用ExpandableListView包裹ExpandableListView实现的,粗略写完后发现直接崩溃了,方法应该是可以的,但还需要时间去调试,因为时间有点赶,我就直接用了ScrollView和ExpandableListView搭配,通过addView的动态方式,算是实现了这个三级菜单,因为这个方式View的可复用性实在太差,我做完也没有花...原创 2019-06-06 10:44:18 · 314 阅读 · 0 评论 -
ExpandableListView设置group和child高度大小没效果解决方法
平时ExpandableListView我用到的机会不是很多,最近刚好用到了,给ExpandableListView配置groupItem和childItem的时候,发现自动配的高度太小了,所以直接配置了一下<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas...原创 2019-06-06 10:25:04 · 1639 阅读 · 0 评论 -
Android 线程通信,初见
Android 主线程与子线程之间的通信,子线程与子线程之间的通信1.主线程发消息,子线程执行操作其实一般情况下,主线程执行完所有必备逻辑后,再直接new Thread().start();(注意,没考虑内存泄漏),因为我们一般没有必要让子线程一直卡在某一步,等待消息后才执行,如果子线程不卡着,子线程执行完后自动结束。当然,新start的Thread我们要确定它什么时间执行还是比较麻烦的。...原创 2018-09-06 20:31:30 · 990 阅读 · 0 评论 -
Android Studio 无设备打包与有设备打包小记
1.无设备打包(电脑没有连接手机设备或模拟器)Android如果没有在项目build.gradle配置打包密钥这些的时候,打包方式为Build里的Generate Signed Apk然后配置密码直接打包就可以了如果在项目build.gradle配置了打包密钥这些,例子如下signingConfigs { debug { storeFile file(...原创 2018-09-30 17:51:16 · 738 阅读 · 0 评论 -
AlarmManager简单用法记录
Intent intent = new Intent(context, MyBroadcastReceiver.class);PendingIntent pi= PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);AlarmManager alarmManager = (Alarm...原创 2019-02-21 20:13:41 · 288 阅读 · 0 评论 -
跳转设置的intent收集
红色字体为需要传参,且参数为package:XXX (包名) Intent 界面 ACTION_SETTINGS 系统设置界面 ACTION_APN_SETTINGS APN设置界面 ACTION_LOCATION_SOURCE_SETTINGS 定位设置界面 ACTION_AIRPLANE_MODE_SETTINGS 无线和网络设置界面 ...转载 2019-01-31 11:24:57 · 633 阅读 · 0 评论 -
靠近息屏的简单使用
private PowerManager.WakeLock powerWakeLock;//注意这个tag内容一定要有":",不然后说你的tag不够uniqueprivate final String powerTag = "PowerManagerWakeLock:MYTAG";在onCreate()里if(Build.VERSION.SDK_INT >= Build.VER...原创 2019-02-25 14:14:15 · 570 阅读 · 0 评论 -
AS布局文件加载异常问题
问题背景今天上午打开AS后突然发现所有xml界面无法预览,打开class文件也发现从头到尾全是错误,在class文件界面上方提示No IDEA annotations attached to the JDK 1.8 (C:\Program Files\Android\Android Studio\jre)…头一次遇见这个问题,只好百度,最后在stackoverflow找到一个解决方案,试了一试...转载 2019-02-26 11:25:46 · 555 阅读 · 0 评论 -
onWindowFocusChanged方法的简单学习
完整的方法应该是@Overridepublic void onWindowFocusChanged(boolean hasFocus){}这个方法的说明官方文档/** * Called when the current {@link Window} of the activity gains or loses * focus. This is ...原创 2019-04-03 13:42:06 · 977 阅读 · 0 评论 -
org.gradle.api.tasks.TaskExecutionException: Execution failed for task 编译不通过,十分有用的查找问题方法
平常使用AndroidStudio的时候,很容易会遇到如下这种编译不通过的情况很多时候,我们即使去compiler error output查看,也很难看出问题出现在哪,这个时候就要用到我将要介绍的方法。具体步骤如下:在AndroidStudio的右侧找到Gradle,选择项目app,点开然后双击build,之后就会出现下面的结果然后你就可以看到出现错误的地方在哪了,直接点击链接...原创 2019-05-08 17:52:59 · 2803 阅读 · 0 评论 -
通过三方库LeakCanary查看内存泄漏
可能大家都用过了,我这里只是做记录一下首先,引入LeakCanary在项目build.gradle中加入dependencies { debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.6.3' releaseImplementation 'com.squareup.leakcanary...原创 2019-05-23 11:46:38 · 994 阅读 · 0 评论 -
设置所有Activity界面初始为无标题界面 + 单个界面无标题
实际开发中,Activity界面都是想连标题也是自定义的,但是对于新建的项目来说,肯定是带有贼丑的标题栏的,因此就需要把这个标题栏去掉,然后根据需求自定义标题这里要说一下的就是简单去掉新项目带有的标题栏首先打开项目AndroidManifest找到application按着ctrl键,鼠标左键点击theme对应的AppTheme,就会跳转到主题自定义style位置当然,你也可以直接去资源...原创 2019-05-23 10:37:48 · 304 阅读 · 0 评论