自定义博客皮肤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)
  • 资源 (2)
  • 收藏
  • 关注

原创 ObservableViewModel

package com.pcf.customize.bindingimport androidx.lifecycle.ViewModelimport androidx.databinding.Bindableimport androidx.databinding.Observableimport androidx.databinding.PropertyChangeRegistryo...

2019-09-09 11:28:43 739

原创 android Databinding 自定View双向绑定

ObservableViewModel实现Databinding的双向通知我们需求让类去继承BaseObservable类但我们又想使用ViewModelJava的机制不允许多继承这意味着我们不能同时使用ViewModel+BaseObservable但如果是接口的话 那就不是问题了BaseObservable实际上是一个实现了Observable接口的一个类/* * Cop...

2019-09-05 09:47:21 1688

原创 Navigation Preview unavailable in Android Studio 3.4 Preview

Navigation Preview unavailable in Android Studio 3.2 Preview最近在学Jetpack Navigation组件但是在写navigation资源文件的时候Preview 显示不出来一开始以为是Android Studio的bug后来一查才知道就navigation.xml文件少了layout属性<?xml version...

2019-08-09 15:39:14 1450 2

原创 Databinding AndroidX 不兼容的类型: NonExistentClass无法转换为Annotation

NonExistentClass无法转换为AnnotationNonExistentClass无法转换为AnnotationNonExistentClass无法转换为Annotation在把项目从android.support转到androidX的过程中遇到的一个问题不兼容的类型: NonExistentClass无法转换为Annotation此处打码了用户名与项目名找到具体报错的地方...

2019-07-26 14:41:53 6906

原创 android随机小球碰撞(一)边界检测

android随机小球碰撞1. 通过自定义View绘制小球2. 定时更新小球位置,让小球运动3. 边界检测,小球碰撞到布局边界时更改小球运动方向1. 通过自定义View绘制小球创建Ball类,封装与小球有关的属性元素在构造方法中随机生成0-360的方向值package com.pcf.randomball.bean;import java.util.HashMap;import ja...

2019-07-12 10:16:42 1283

原创 Jetbrains IDE 各种 plugins 插件下载

授人予鱼 不如授人予渔有时我们IDE的插件可能会因为各种原因下载失败 这时我们可以尝试本地安装插件 很多大神也会下载本地文件上传到论坛, 网盘供人下载 有些是免费的 有些是要积分之类的 那我们可以自己下载吗 当然是可以的http://plugins.jetbrains.com/上面这个网址就是Jetbrains IDE插件的下载地址...

2018-07-12 10:09:58 9230 1

原创 Flutter填坑 编译运行不起来

记录下Flutter中遇到的一些问题 基本上按照Flutter中文网的教程可以完成Flutter环境的搭建Flutter中文网 https://flutterchina.club/ Windows 环境 https://flutterchina.club/setup-windows/Mac 环境 https://flutterchina.club/setup-macos...

2018-07-12 09:55:32 10397

原创 Plugin 'Flutter' is incompatible with this installation

Android Studio一直无法下载插件 检查更新版本也不行 最终找到了解决办法 把这个勾取消了就可以了

2018-07-11 18:33:41 830

原创 设计模式:简单工厂、工厂方法、抽象工厂

一.简单工厂 简单工厂其实不能算是一种设计模式,在某种程序上来说它更像是一种编程习惯。 简单工厂的常见做法是封装创建对象的代码,通过工厂类静态调用返回创建的对象那简单工厂有什么优缺点呢 优点:不需要通过创建对象的方法来实例化对象 缺点:不能通过继承来改变创建方法,不修改代码的话,是无法扩展的大致类图如下: 大致的代码如下 :/** * Created by pcf ...

2018-07-11 16:08:58 152

转载 ADB命令查看设备安装列表

前提是已经下载Android SDK并配好环境变量!在控制台输入命令 adb shell pm可以看到adb shell pm的相关用法,详细信息请查看控制台输出查看手机上应用的packageName: adb shell pm list packages...

2018-07-11 10:25:18 5253

原创 安卓Apk安装包瘦身之PNG转WebP

webp格式是谷歌推出的一种有损压缩格式,这种图片格式相比png或者jpg格式的图片损失的质量几乎可以忽略不计 但是压缩后图片的体积却比png或者jpg要小很多。 亲测一个100kb的png图片经过webp转换之后可以压缩到50kb左右,而且质量没有明显的损失。 目前谷歌已经将这种压缩格式集成到其官方开发工具AndroidStudio中。 具体的使用方法是:1 选中项目资源文件中需要进...

2018-04-28 18:52:26 2413

原创 自定义软键盘 EditText光标问题

自定义软键盘 光标问题使用自定义键盘的时候 为了隐藏系统的软键盘 使用了editText.setInputTypeeditText .setInputType(InputType.TYPE_NULL);但会导致EditText光标不显示 不闪烁这里把我的解决方法写一下editText.setOnTouchListener(new View.OnTouchListener(...

2018-03-27 18:26:34 820

原创 Bugly 微信Tinker 热修复

目前常见热修复方案的一个对比 &nbsp; Tinker QZone AndFix Robust 类替换 yes yes no no So替换 yes no no no 资源替换 yes yes no no 全平台支持 yes yes yes yes 即时生效 ...

2018-03-12 11:49:30 622

原创 Android基于KeyboardView和Keyboard实现自定义软键盘 自定义键盘背景色

Android基于KeyboardView和Keyboard实现自定义软键盘在一些特别的情况下我们需要去自定义键盘 例如: 银行app的密码输入之类的笨方法就是直接使用布局写我们的自定义软键盘 但这样写的话我们的代码量就很多 Android官方提供了KeyboardView和Keyboard两个类 我们可以用这两个类去实现自己的软键盘Demo 已上传 GitHub http...

2018-03-09 18:58:59 18938 6

原创 Android 跳转到拨号界面及自动拨号

1 Android直接拨打电话 Intent dialIntent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:" + phoneNumber));//直接拨打电话 startActivity(dialIntent); 需要添加拨号权限 推荐使用第二种 <uses-permission android:name="android.perm

2017-07-14 15:24:02 2641

原创 安卓全屏设置实现(基于Activity与AppCompatActivity)

为了让新手少走点弯路,现在新建的项目多大自动继承自AppCompatActivity。 如果采用以前的实现方法,都会出现报错的情况,很多博客只讲其一不讲其二 我在这里 两种方法都会提到Activity下的实现 以下方法只能基于Activity,继承AppCompatActivity则不能实现。 一 . 通过代码 在setContentView之前执行:requestWindowFeat

2017-06-19 19:07:39 961

原创 Retrofit不进行Json解析,直接返回Json String

太长不看版 retrofit 可以得到String字符串的,使用JsonObject;public interface APIService { @FormUrlEncoded @POST("tqt-system/code/phone") Call<JsonObject> postPhoneCode(@Field("phone") String phone); @For

2017-06-14 16:16:46 3482

原创 Android 6.0 运行时权限 easypermissions,permissionsdispatcher ,rxpermissions 的实现

关于android 6.0 运行时权限 ,目前有五种处理方法危险权限和权限组 权限组 危险权限 CALENDAR READ_CALENDAR WRITE_CALENDAR CONTACTS READ_CONTACTS WRITE_CONTACTS GET_ACCOUNTS LOCATION ACCE...

2017-06-07 19:33:14 1278

原创 android 微信支付Demo遇到的问题,org.apache.http.legacy Library 的导入

1、httpclient错误官方给的demo是eclipse的,就用as通过import project的方式打开了这个demo。打开之后导包org.apache.http的错误,在as中解决httpclient的办法,打开app里的build.gradle 解决方法:在android {compileSdkVersion 23buildToolsV

2017-06-05 18:54:27 786

原创 应用/游戏在三星Galaxy S8及S8+上的适配办法

三星的Galaxy S8及S8+的屏幕比较长   在应用或游戏没有做适配的时候,在S8上运行时会存在黑边的情况我们只需添加一行代码到manifest的activity中&lt;meta-data android:name="android.max_aspect" android:value="2.1" /&gt; ...

2017-06-03 14:53:48 875

Android 6.0 permissions Demo

Android 6.0 permissions Demo

2017-06-08

org.apache.http.legacy.jar -sdk 23

org.apache.http.legacy.jar -sdk 23

2017-06-05

空空如也

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

TA关注的人

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