自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

iblade的博客

明年的某个时候,你会想着要是今天就行动了该多好。

  • 博客(293)
  • 资源 (8)
  • 论坛 (1)

原创 常用命令

获取签名文件MD5 :keytool -list -v -keystore lagoueducation.jks跳转至路由页adb shell am start -a android.intent.action.VIEW -d "lagou://lagou.com/edit?type=2\&id=1"

2020-08-28 18:17:38 30

原创 HashMap和LinkedHashMap区别应用

java为数据结构中的映射定义了一个接口java.util.Map;它有四个实现类,分别是HashMapHashTableLinkedHashMapTreeMapMap主要用于存储健值对,根据键得到值,因此不允许键重复(重复了覆盖了),但允许值重复。Hashmap 是一个最常用的Map,它根据键的HashCode值存储数据,根据键可以直接获取它的值,具有很快的访问速度,遍历时,取得数据的顺序是完全随机的。 HashMap最多只允许一条记录的键为Null;允许多条记录的值为 Null;Hash

2020-09-02 20:37:15 32

原创 清空所有Activity

退出APP是需要清空所有Activity, 清空的前提是 需要记录已开启的所有 Activity。在Application.ActivityLifecycleCallbacks的生命周期中调用add和remove操作。public class ActivityStackHelper { private static LinkedHashMap<Class<?>, Activity> activities = new LinkedHashMap<>();

2020-09-02 20:27:40 32

原创 自动点击“请确认是否继续观看”弹窗

Mac电脑:option+command+J (Windows电脑 F12) 右侧会显示控制窗口,然后在窗口内 输入如下代码,点击回车。setInterval(() => { const buttonEle = document.getElementsByClassName('layui-layer-btn0')[0]; if (buttonEle) buttonEle.click();}, 3000)Chrome浏览器 有个视频播放的加速插件:https:.

2020-08-28 15:38:58 222

原创 TextView不依赖ScrollView也能滚动

String TEXT = "文艺复兴这场文化运动对近代早期欧洲的学术生活造成了深刻的影响。"; StringBuilder sb=new StringBuilder(); for (int i = 0; i < 15; i++) { sb.append(i).append("\n").append(TEXT).append("\n"); } textView.setText(sb.toStrin...

2020-08-21 22:00:42 44

原创 View在GONE时获取宽高

需求:页面有一张card 首次进入该页时 默认展开,之后再次有折叠卡片 第一次进入时 需要折叠,并且折叠时 点击展开按钮可展开。如果进来时就隐藏GONE 展开动画时 如何获知高度呢?方法一: private void initHeight() { tvContent1.setVisibility(View.INVISIBLE); tvContent1.getViewTreeObserver().addOnGlobalLayoutListener(new ViewT

2020-08-21 21:19:57 60

原创 Android 动画ObjectAnimator中height和translationY

动画实现两种方式:ObjectAnimator animator1 = ObjectAnimator.ofFloat(tvContent1, View.TRANSLATION_Y, hFrom, hTo);ObjectAnimator animator1 = ObjectAnimator.ofInt(wrapper, “height”, hFrom, hTo);但是效果完全不同:如下图:public class SecondActivity extends AppCompatActivity

2020-08-21 20:39:12 64

原创 多行TextView后插入图片

public class LabelUtils { /** * @param text 标签内容 * @param textColor 标签颜色 * @return */ public static Drawable fromText(String text, String textColor) { int DP1 = DensityUtil.dip2px(1); Paint paint = new Pain.

2020-08-06 10:07:17 70

原创 Android设计模式之单例模式

一 单例模式介绍及它的使用场景单例模式是应用最广的模式。其实经常使用的图片加载框架ImageLoader的实例创建就是使用了单例模式,因为这个ImageLoader中含有线程池、缓存系统、网络请求,很消耗资源,不应该创建多个对象,这时候就需要用到单例模式。ImageLoader的创建代码如下:ImageLoader.getInstance();// 在自己的Application中创建全局实例.....//getInstance()执行的源码 public static ImageLoader

2020-07-13 22:53:26 69

原创 死锁

2020-06-22 20:00:53 64

原创 操作系统:进程引入线程机制

有的进程 可能需要同时做很多事,传统的进程只能串行执行一系列程序。为此,引入了“线程”机制,来增加并发度。

2020-06-15 19:45:34 76

原创 FragmentPagerAdapter动态增删Fragment不更新

public class ResumePreviewAdapter extends FragmentPagerAdapter { private ArrayList<Fragment> fragments; private String[] tabTitles; public ResumePreviewAdapter(FragmentManager fm, ArrayList<Fragment> fragments, String[] tabTitles)

2020-06-15 14:48:48 103

原创 EditText的焦点监听回调

EditText的焦点问题。需求背景:1.EditText的输入线条 未输入状态时,灰色。2.输入状态时,绿色;3.点击“确定”且 输入格式错误时(包含空),红线提示。一旦重获焦点,变成输入状态的绿色。实现效果如下: /** * 焦点在的时候,输入线条变绿 * * @param isColorFocus */ public AutoEditText setLineColorFocus(boolean isColorFocus) {

2020-05-22 17:51:46 122

原创 Gradle:4.groovy常见Json,xml,file处理

//Bean-->Json Json-->Beandef pList = [new Person(name: 'John', age: 25) , new Person(name: "Max", age: 26)]def json = JsonOutput.toJson(pList)println json//[{"age":25,"name":"Jo...

2020-04-11 17:25:33 91

原创 Gradle:3.groovy面向对象

/** * 默认class 属性值 均为public权限 */class Person { String name int age def increaseAge(int d) { age += d }}/** 无论直接.还是调用get/set 最终都是调用get/set */def person = new Person(name...

2020-04-09 23:32:55 49

原创 Gradle:2.groovy常用的三种数据结构

//list 凡是Java中list有的方法 它都有 不再赘述//def list = new ArrayList()//java的定义方式def list = [1, 2, 4, 5]//这个也是ArrayListdef array = [1, 2, 3] as int[]//这是数组,不是listint[] array2 = [1, 2, 3, 4, 5]//数组/** * ...

2020-04-09 22:41:44 66

原创 AndroidStudio常用插件汇总

本文内容全部来自网络,一并感谢。1.GsonFormat快速将json字符串转换成一个Java Bean,免去我们根据json字符串手写对应java Bean的过程。使用方法:快捷键Alt+S也可以使用Alt+Insert选择GsonFormat2.Android ButterKnife Zelezny配合ButterKnife实现注解,从此不用写findViewById,想着就爽啊。...

2020-04-08 15:21:14 295

原创 AndroidStudio常用快捷键

写在前面本文翻译自 Android Studio Tips by Philippe Breault,一共收集了62个 Android Studio 使用小技巧和快捷键。 根据这些小技巧的使用场景,本文将这62个小技巧分为常用技巧(1 – 28)、编码技巧(29 – 49)和调试技巧(50 – 62),分成三个部分。常用技巧书签(Bookmarks)**描述:**这是一个很有用的功能,...

2020-04-07 21:05:18 99

原创 Gradle:1.groove导语

groovy:基于JVM敏捷语言;与Java完美结合,可以使用Java所有类库;语法上支持动态类型def,闭包更敏捷,语法糖很多可编程,可脚本//动态类型 随时切换def p = 123p = "blade"p = 12.5p = [3, 6, "hello"]//但是建议自己使用的变量定义弱类型def,对外使用要强类型//强大到可怕case任意类型。有了它,if ...

2020-04-06 22:45:20 60

原创 算法:4栈和对列

文章目录栈的特性:后进者先出,先进者后出Java数组实现一个固定大小的栈:支持动态扩容的顺序栈栈的应用:函数调用栈:表达式求值中的栈栈在括号匹配中的应用浏览器前进后退的实现栈的特性:后进者先出,先进者后出栈就像摞在圆筒里的一摞盘子。放盘子的时候,都是从下往上一个一个放;取的时候,我们也是从上往下一个一个地依次取,不能从中间任意抽出。后进者先出,先进者后出,这就是典型的“栈”结构。栈是一种“...

2020-04-05 16:14:25 41

原创 算法:3链表

将某个变量赋值给指针,实际上就是将这个变量的地址赋值给指针,或者反过来说,指针中存储了这个变量的内存地址,指向了这个变量,通过指针就能找到这个变量。...

2020-04-05 14:58:59 77

原创 算法:2.数组

算法:2.数组数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。关键词:线性表,连续内存空间线性表:每个线性表上的数据最多只有前和后两个方向。除了数组,链表、队列、栈等也是线性表结构。而与它相对立的概念是非线性表,比如二叉树、堆、图等。之所以叫非线性,是因为,在非线性表中,数据之间并不是简单的前后关系。连续的内存空间和相同类型的数据这两个...

2020-04-04 22:54:17 89

原创 算法:1.复杂度分析

复杂度分析:数据结构和算法解决的两大问题:快和省。运行快,储存省。复杂度分析是算法学习的精髓:时间复杂度,空间复杂度。事后统计法有很大局限性:测试结果依赖测试环境测试结果受数据规模影响很大。大O复杂度表示法:例1:1 int cal(int n) {2 int sum = 0;3 int i = 1;4 for (; i <= n; ++i) {...

2020-04-04 20:05:37 93

原创 Flutter plugin not installed; this adds Flutter specific functionality.

运行flutter doctor遇到问题:1.权限问题 直接按照提示 运行 flutter doctor --android licenses 就行然后面对 [ y / N ] 直接各种输入y。就完事了。Flutter plugin not installed 最诡异,命名AS上安装过了。是因为flutter配置中 并不知道AS的根目录路径,需要加上AS的路径(bin路径,如图)终...

2020-03-17 17:55:05 1967

原创 Dart报错汇总

1.Dart_LoadScriptFromKernel: The binary program does not contain ‘main’保存一下(Ctrl+S),然后在code run,就OK了。

2020-03-06 11:36:31 298

原创 Android判断App是否位于前台

/** * 自动根据参数选择判断前后台的方法 * * @param context 上下文参数 * @return */ public static boolean isForeground(Context context) { boolean runningTask = getRunningTask(con...

2020-03-04 12:28:30 483

转载 Android中的位运算

Android在编码的时候经常使用到位运算,这里以Intent的Flags为例。(查看Intent说明文档)首先通过查看Flags的值,都是16进制数值代表,且只使用一位并只为1|2|4|8 (与2的次方相关),例举几个源码中对应的值:publicstaticfinalintFLAG_ACTIVITY_NEW_TASK= 0x10000000;public...

2020-03-03 22:39:55 126

原创 Android悬浮窗视频

类似微信视频通话需求。思路:1.申请悬浮窗权限2.windowManager实现悬浮窗;3.moveToback退出全屏,显示悬浮窗;当用户正在NewsActivity看新闻,视频电话来了,接听(VideoActivity),然后缩至悬浮窗,此时应回到NewsActivity,悬浮窗出现时该如何回到电话前的页面?finish掉VideoActivity吗?finish后自然回退到栈内上一...

2020-03-03 22:35:02 718

原创 Android屏幕常亮

最简单 布局文件任一可见View设置属性android:keepScreenOn=“true”;关闭时只需把true改为false即可。在Activity的onCreate()中添加getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);取消常亮时,把addFlags改为clearFlags参数不变。...

2020-03-03 21:45:07 147

原创 Android Studio Run 报错Unknown run configuration type AndroidRunConfigurationType

强制关机后,开启AS,run时报错如题。解决方案:windows:AS左上角 File >> Setting >> Plugins >> 把Android Support勾选上,点击Apply,再点OK,会提示重启,重启完就好了。Mac: AS左上角的Android Studio>>Preferences>>Plugins勾选And...

2020-03-03 14:44:16 74

原创 Configuration on demand is not supported by the current version of the Android Gradle plugin since y

Configuration on demand is not supported by the current version of the Android Gradle plugin since you are using Gradle version 4.6 or above. Suggestion: disable configuration on demand by setting org...

2020-02-17 12:50:27 180

原创 java.lang.AbstractMethodError: org.jetbrains.plugins.gradle.tooling.util.ModuleComponentIdentifierIm

导入一个第三方工程后报错,java.lang.AbstractMethodError: org.jetbrains.plugins.gradle.tooling.util.ModuleComponentIdentifierImpl.getModuleIdentifier()Lorg/gradle/api/artifacts/ModuleIdentifier; at org.gradle.api...

2020-02-17 12:36:43 405

原创 Android xml gradient注意事项

gradient:渐变android:startColor和android:endColor分别为起始和结束颜色,android:angle是渐变角度,必须为45的整数倍。另外渐变默认的模式为android:type=“linear”,即线性渐变,可以指定渐变为径向渐变,android:type=“radial”,径向渐变需要指定半径android:gradientRadius=“50”。a...

2020-01-11 15:33:53 108

原创 红米手机H5布局压扁

移动端rem布局样式错乱问题这段时间在开发app内的h5页面,发现一个奇怪的问题,测试机中有红米手机 ,oppo手机,在app打开h5之后,整个页面被压扁变形了,一开始以为是手机分辨率的问题,但是在同样的手机的其它app内和浏览器内打开页面,都是完全正常显示。后来查了一下,发现原来是手机字体大小设置的问题,当把字体调大一号时,在app内就正常显示了。现在很多安卓手机的系统都是可以自己去设置系统...

2019-11-20 19:48:25 190

原创 Android消息通知声音和振动

/** * 播放通知声音 */ public static void playRingTone() { Uri uri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); Ringtone rt = RingtoneManager.getRington...

2019-10-22 16:05:17 2397

原创 Json手动解析小案例

本文Json解析荔枝新闻 json格式为:{ "status":"ok", "paramz":{ "feeds":[ { "id":299080, "oid":288342, "category":"article",

2019-10-16 17:44:57 1928

原创 Android组件间通信机制

组件间通信机制:1.本地广播:本地广播特点:(观察者模式的运用)比全局广播更快,出自于Android.support,(底层实现是handler);仅限APP内传播,安全性,保密性,效率远高于全局广播;不支持静态注册;缺陷:无法干涉传输途中的任何步骤。也存在比本地广播更加高效的通信方式:事件总线。2.EventBus:替代Intent,Handler,Broadcast,在F...

2019-09-02 20:12:45 126

原创 Android组件化基础

组件化:组件(功能导向):单一的功能 组件,如视频组件,支付组件,路由组件模块(业务导向):独立的业务模块,如首页模块,直播模块,IM模块。粒度上,模块大于组件,二者思想一致:代码复用,业务解耦。组件化优势:1.避免重复造轮子,提高复用性,节约成本,提升开发效率。2.项目间共用组件,可以确保整体技术的统一性。3.为插件化共用一套底层模型做准备。模块化优势:1.业务解耦,移植...

2019-09-02 15:11:23 74

原创 PopupWindow显示位置错乱,真正的终极方案。

华为手机上PopupWindow弹出位置 直接置顶了,小米手机按照代码的意志显示在titleBar之下。效果类似这样:谷歌一把 ,各种吐槽该问题。大神们的主流解决方案,主要分两种,①重写showAsDropDown(),以24为界限,区别对待;②调用show的时候,SDK>24的时用showAtLocation()替代showAsDropDown();我先把大婶们的各类终极版的...

2019-08-26 12:15:58 1985 1

原创 TextView部分文字加粗

开发中经常遇到TextView中部分文字加粗或者颜色不同的场景一般使用SpannableString就能解决。例如: private void testText1(String posName) { String text = "* 为你发布的 " + posName + " 添加一句宣传语吧!"; SpannableString span = new S...

2019-08-23 17:10:46 1881

微信QQ登录分享-AndroidStudio

适用于微信和QQ第三方登录和分享使用,包含两个jar和指导文章链接。自己代码工具类。

2018-09-25

Spring从入门到精通(高清珍藏版)

Spring 从入门到开发,全书详细介绍了Spring开发的各个技术细节,该资源是高清的pdf版本,是学习Spring不可多得教材。

2018-09-19

汉字转换拼音的jar

汉字转换拼音的jar,可用于Android或者java开发中需要汉字转换拼音的场景,pinyin4j-2.5.0.jar,带声调,可更改大小写

2017-09-05

adb的压缩包

旧版adb压缩包

2017-06-24

Android弹窗ToastDemo源码

自定义了土司 显示大小 显示时间 显示位置 透明度 圆角与否 显示内容 等

2016-05-20

Android弹窗PopuWindowDemo源码

Android弹窗PopuWindowDemo源码,直接输入提示内容字符串和显示时间就行了

2016-05-20

Scrollview中嵌套ViewPager和ListView常出现的问题

Scrollview中嵌套ViewPager和ListView常出现的问题: ViewPager如果在Scrollview中使用,并且宽高指定为match_parent或者wrap_content则不会显示内容,但是如果将高度指定为200dp,则ViewPager则会将内容显示到屏幕上 ListView同ViewPager类似,必须指定固定高度之后,才可以显示相应的高度,否则只显示一个Item的内容高度,然后在ListView区域上下滑动时,Scrollview并没有效果,而是实现的是ListView的上下滚动事件。

2016-03-30

常用布局颜色

用于常规颜色的配置

2016-03-22

iblade的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也
提示
确定要删除当前文章?
取消 删除