- 博客(20)
- 资源 (1)
- 收藏
- 关注
原创 AndroidStudio系列
命名规范:命名规范、资源文件存放位置思想模式:思想模式支持的编程规范:Java系列编译器检查代码规范获取资源:代码里取Resource资源图片资源:drawable里的图片与图标资源UI动画自定义控件:顺时针与逆时针路径Path类屏幕左上右下坐标计算Rect、RecrF 矩形类Region区域onDraw函数画布Canvas...
2019-03-12 11:41:29 1256
原创 反射——基本类周边信息获取
类的生命周期:装载:类的装载是通过类加载器完成的,但是同一个类只会被类装载器装载一次,记住:只装载一次!利用装载的类可以实例化出各种不同的对象!链接:链接就是把二进制数据组装为可以运行的状态。链接分为校验,准备,解析这3个阶段。校验一般用来确认此二进制文件是否适合当前的JVM(版本),准备就是为静态成员分配内存空间,并设置默认值。解析指的是转换常量池中的代码作为直接引用的过程,直到所有的符...
2019-03-28 16:51:29 186
原创 生命周期
setContentView()被调用会执行onContentChanged事件(需要重写)正常情况下的生命周期1、onCreate()和onDestroy()是配对的,标志着Activity的创建与销毁onStart()和onStop()是配对的,标志着Activity是否可见onResume()和onPause()是配对的,标志着Activity是否在前台2、从A打开B...
2019-03-28 10:01:46 357
原创 泛型与无边界通配符
泛型:泛型是约束类型,分“显示”泛型和“隐示”泛型显示泛型:内部定义指定类型,外部调用只能传入指定类型,否则报错如:List<String> 只能添加String类数据隐示泛型:隐示泛型就是不明确表示类型,而用字母T代表它跟接口有点类似,实现方不用太担心这个类是由谁来调用,只要在有需要的地方编写功能即可,T的具体类型由调用者来决定(这里的T可以是...
2019-03-26 11:51:49 486
原创 命名规范、资源文件存放位置
包:共分4级,具体如下图:类:大骆驼拼写法(单词首字母大写)变量:小骆驼拼写法(首字母小写,其它首字母大写)方法:小骆驼拼写法(首字母小写,其它首字母大写)参数名:小骆驼拼写法(首字母小写,其它首字母大写)布局文件/控件ID名:图片资源名:values参数值命名:动画资源命名:命名注意事项:资...
2019-03-25 18:45:44 717
原创 快速切换到主线程更新UI的几种方法
快速切换到主线程更新UI的几种方法//对UI线程操作前调用Looper.prepare();Looper.prepare();ToastUtils.showLongToast(HomeActivity.this, "账号被登出");loginOut();//对UI线程操作结束调用Looper.loop();Looper.loop();...
2019-03-25 17:53:01 1603
原创 引入aidl文件并调用
如何引入:第一步:找到需要导入工程的aidl文件.通过文本打开,找到文件中的具体包名package woyou.aidlservice.jiuiv5;第二步:在studio的工程目录下app/src/main/下创建一个aidl文件夹(aidl文件夹是跟java文件夹是同级的,不要创建到java文件夹里面)第三步:依次创建跟之前找到的包名一样的文件夹,我这里是:...
2019-03-22 18:31:46 4651 5
原创 数据类型
java分"基本数据类型"和"引用数据类型"基本数据类型共分8种:byte、short、int、long、float、double、char、boolean引用数据类型:String、除过以上8种之外所有自定义类型都为引用数据类型,但是String虽为引用数据类型,但因为它是最常见类型之一,因此和基本类型一样也是值传递数据类型的引用:引用数据类型是会开辟空间,存放在内存,它...
2019-03-22 16:29:15 93
原创 可变长参数
语法定义:使用...表示可变长参数,例如print(类型... args){ ...}具有可变长参数方法中内部可以当数组使用,外部可赋无数个值。print(类型... args){ for(类型 temp:args) System.out.println(temp);}调用可以给出任意多个参数也可以不给参数,例如:print();print("hell...
2019-03-22 15:48:45 396
原创 测试方法执行时间
System.currentTimeMillis():默认为得到间隔毫秒:int num1=System.currentTimeMillis();int num2=System.currentTimeMillis();int num3=num2-num1;得到间隔为秒:(int) ((num2 - num1) / 1000);得到的currentTimeMillis可以转换为时间...
2019-03-20 19:06:46 813
原创 对象的拷贝
前言:java语言拷贝对象分别为"对象拷贝"、"浅拷贝"、"深拷贝"不同的拷贝,在互相传值时,有不同的影响对象拷贝:java中最常见的对象拷贝,既为对象A=对象B(也称为内存完全拷贝),对象拷贝后不会生成新的对象,二者的内存地址是一样的,也就是说如果把对象B拷贝到对象A,那么改变了对象A里的参数值,对象B的参数值也会跟着变,因为它们引用的是同一个内存地址,所以里面保存的值也是一模一样的...
2019-03-20 19:03:57 268
原创 保留小数点
/*** 保留小数点* @param number* @param dot 保留位数,保留0位从角四舍五入,保留1位从分四舍五入,以此类推* @return*/public static double formatDoubleDot(double number,int dot) { BigDecimal bg = new BigDecimal(number);...
2019-03-20 19:02:09 140
原创 String类型函数
判断一个字符串是否包含某个子串的n种方法startsWith() contains方法 indexOf方法判断输入是否是中文input.length() != input.getBytes().lengthString.format:String.format()的使用格...
2019-03-20 18:59:49 236
原创 四舍五入的细节
四舍五入:round 则是4舍5入的计算,入的时候是到大于它的整数round方法,它表示“四舍五入”,算法为Math.floor(x+0.5),即将原来的数字加上0.5后再向下取整,所以,Math.round(11.5)的结果为12,Math.round(-11.5)的结果为-11。Math.round() 传入float或者double类型...
2019-03-20 18:55:52 142
原创 DialogFragment
封装基类:BaseDialogFragment extends DialogFragmentpublic int[] whs = new int[2];@Overridepublic void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState);}@O...
2019-03-18 15:37:09 137
转载 Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolv...【终极解决方案】
Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolv...【终极解决方案】
2019-03-13 16:21:44 7127
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人