自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 Android 入门分享

什么是AndroidAndroid是基于Linux内核开发、主要以Java为开发语言的一个开源的操作系统,主要用于移动设备,如智能手机和平板电脑、可穿戴设备等,当然还有更多的领域使用到了Android系统,例如电视、机顶盒等为什么选用Linux内核Android的历史Android的架构1.Linux内核层android系统是基于Linux内核的,这一层为android设备的各种硬件提供了底层的驱动,如:显示驱动,音频驱动,照相机驱动等。2.系统运行库层这一层通过一些 C/.

2021-08-13 11:51:22 231

原创 Android 热更新 微信的tinker方案 腾讯的bugly集成

以前看到游戏的更新不需要直观看到下载安装就已经更新好了,觉得这个更新方案很NB,然后知道了热更新,但是也没有深究最近公司突然说需要热更新,不要安装也可以解决一些小bug。一、为什么需要热更新正常的流程是:新版本上线,发现问题或用户反馈bug,紧急修复,上线版本,用户重新安装。每次出现bug都要重新安装,这个会让客户奔溃,然后卸载的热修复流程:新版本上线,发现问题或用户反...

2019-12-18 13:51:23 315

原创 获取验证码 倒计时 CountDownTimer

项目中不可避免的要使用倒计时,之前会用之前一直使用Handler + Runnable来实现,但是自从发现CountDownTimer了后,发现CountDownTimer挺好用比如要做一个获取验证码的倒计时新建CountDownTimerUtils继承CountDownTimer重写onTick()这个是间隔时间内执行比如说设置1s执行一次 那么就1秒自己调用一次这个...

2019-10-10 14:54:30 185

原创 自定义EditText-带清除按钮

一个带清除按钮的输入框其实很简单,第一步是设置图标private void init() { // 获取EditText的DrawableRight,假如没有设置我们就使用默认的图片,获取图片的顺序是左上右下(0,1,2,3,) mLeftDrawble = getCompoundDrawables()[0]; if (mLeftDrawble == null)...

2019-10-10 14:22:35 442

原创 客户端无埋点异常监控-Android

目的 为了更好的拿到用户的操作数据,操作习惯,线上的错误日志,为了能在出现问题时能更快,更准的找到问题,解决问题收集方式 1.第一类是代码埋点 即在需要埋点的节点调用接口直接上传埋点数据,友盟、百度统计等第三方数据统计服务商大都采用这种方案 2.第二类是可视化埋点 即通过可视化工具配置采集...

2019-10-07 15:00:01 434

原创 客户端单元测试-Android

单元测试的作用为了使工作完成的更加轻松,设计更加的完善,减少调试的时间提高代码的质量。什么是单元测试单元测试是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确,通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。Android 端的单元测试什么是mvp -->区分mvc,mvp,mvvm关于单元测试对于单元...

2019-10-07 14:45:31 558

原创 Android mvc,mvp,mvvm模式记录

文章目的:(1)了解并区分MVC,MVP,MVVM。(2)知道这三种模式在Android中如何使用。mvcMVC,Model View Controller,是软件架构中最常见的一种框架,简单来说就是通过controller的控制去操作model层的数据,并且返回给view层展示,具体见下图工作原理:用户触发点击事件,View层发指令到Controller层,Cont...

2019-05-20 14:36:24 679

原创 vivo x7 SimpleDateFormat使用奔溃问题

突然有反馈说vivo x7 有奔溃,查看了日志发现报java.lang.IllegalArgumentException: Unknown pattern character 'Y'这个问题查看代码发现SimpleDateFormat format = new SimpleDateFormat("YYYY-MM-dd");试着把YYYY改为yyyySimpleDateForm...

2019-05-10 13:24:40 264

原创 TabLayout 的使用 更改下划线的长度,和一个奇葩的问题

使用 TabLayout 1.xml中添加布局<android.support.design.widget.TabLayout android:id="@+id/tab" android:layout_width="@dimen/x500" android:layout_height="@dimen/y100" android:layout_marg...

2018-11-19 11:22:54 674

原创 界面有Edittext时有些手机进入界面会自动弹出键盘,消除自动弹出键盘

消除自动弹出键盘在xml 的最外面的布局中加入2行代码android:focusable="true"android:focusableInTouchMode="true"

2018-06-19 10:16:47 2934 1

原创 Android studio 常用的快捷键

1.

2018-05-31 17:25:06 168

原创 Android 遇到的的错误,异常

1.

2018-05-31 17:24:31 136

转载 java.math.Math类常用的常量和方法:

Math.PI 记录的圆周率Math.E记录e的常量Math.abs 求绝对值Math.sin 正弦函数 Math.asin 反正弦函数Math.cos 余弦函数 Math.acos 反余弦函数Math.tan 正切函数 Math.atan 反正切函数 Math.atan2 商的反正切函数Math.toDegrees 弧度转化为角度 Math.toRadians 角度转化为弧度Math.ceil ...

2018-05-29 13:59:20 348

原创 Android 自定义View 刻度表

圆形刻度表  public class TestDialView extends View {    private Context context;    private int jindu = 60;    //判断是否在改变    private boolean isDown;    //写字的笔    private Paint paintText;    //外圈笔    private...

2018-05-25 17:55:13 796

原创 自定义view的onMeasure方法 简单用法

 @Override    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {        super.onMeasure(widthMeasureSpec, heightMeasureSpec);        int height = getSize(100, heightMeasureSpec); ...

2018-05-25 14:37:29 195

原创 Android 自定义View 启动页面跳转按钮

看到过有个项目中,启动页面一张图片,右上角是一个圆形跳过,并且有一个逐渐缩小的圆弧首先,先画一个实心灰色圆,在中间画一个跳转字,在外边画一个圆弧  启动动画就设置圆弧的开始角度和结束角度public class JumpOverView extends View {    private Context context;    //写字画笔    private Paint paintText; ...

2018-05-25 14:04:36 862

原创 Android 跳转传值的方法

一般有三种方法1.startActivity ActivityA --> ActivityBActivityA中 Intent intent = new Intent(ActivityA.this,ActivityB.class);startActivity(intent);ActivityB中intent = getIntent();intent 传递数据 在A发送 intent.putE...

2018-05-21 15:14:07 2109

原创 Android Sqlite简单使用

1.新建一个SqlDBHelper类继承SQLiteOpenHelper用来创建数据库public class SqlDBHelper extends SQLiteOpenHelper {    // 数据库名字    private static String name = "lsqTest.db";    // 版本    private static int version = 1;    ...

2018-05-21 14:20:21 1134

原创 Tablayout 和 FrameLayout

有一个需求,在不点击Tablayout的tab做fragment的切换的时候,需要先removeOnTabSelecteListener(),再调用选择切换fragment的方法,切换后再条用AddOnTabSelecteListener(),否则切换fragment方法会执行2次,程序报错因为会重复添加fragment...

2018-04-28 13:44:52 1179

原创 TextView 加下划线 、 中划线

//中画线textView.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG | Paint.ANTI_ALIAS_FLAG); // 设置中划线并加清晰  //下划线textView.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG); //取消设置的线textView.getPaint().setFlags...

2018-04-27 15:51:59 2227

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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