- 博客(56)
- 收藏
- 关注
原创 工具类/子线程切换主线程
import android.os.AsyncTask;/** * 子线程切换主线程 */public class AsyncTaskUtil extends AsyncTask<Void , Integer , Boolean> { //后台任务开始前调用,界面初始化操作 @Override protected void onPreExecute(...
2018-05-07 17:34:56
360
原创 工具类/自制日志
import android.util.Log;public class LogUtil { public static final int VERBOSE=1; public static final int DEBUG=2; public static final int INFO=3; public static final int WARN=4; p...
2018-05-07 17:34:04
266
原创 个人练习代码库/Socket/聊天客户端
MainAcimport android.content.Intent;import android.os.Build;import android.os.Handler;import android.os.Message;import android.os.SystemClock;import android.support.annotation.RequiresApi;impor...
2018-04-26 20:07:16
231
原创 个人练习代码库/Material Design Part4/动画效果
1.波浪效果<ripple xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:color="@color/colorAccent" tools:targetApi="lollipop">...
2018-04-26 17:11:48
298
原创 个人练习代码库/Material Design Part3/Ac过渡动画Transition
1.主MainAcimport android.app.ActivityOptions;import android.content.Intent;import android.os.Build;import android.support.annotation.RequiresApi;import android.support.v7.app.AppCompatActivity;imp...
2018-04-25 19:17:10
237
原创 个人练习代码库/Material Design Part2/视图与阴影+着色和裁剪
1.视图与阴影elevation:静态的成员translationZ:代码中使用实现动画效果Z(高度)=elevation+translationZXML中使用:android:elevation=“xxdp”代码中:view.setTranslationZ()/动画效果 view.animate().setTranslationZ2.着色+裁剪Tinting:xml中配置tint和tintMod...
2018-04-25 18:22:25
223
原创 个人练习代码库/Material Design Part1/Palette调色盘(待补充)
tips:M D主题 Theme.Material(dark) Theme.Material.Light(light) Theme.Material.Light.DarkActionBar1.Palette实例化 // 同步 Palette p = Palette.from(bitmap).generate(); // 异步(建议) Palette.from(bit...
2018-04-25 17:09:47
216
原创 工具类/CleanLeakUtils
import android.content.Context;import android.view.View;import android.view.inputmethod.InputMethodManager;import java.lang.reflect.Field;/** * Created by YRC on 2017/11/4. */public class Cl...
2018-04-22 19:45:27
234
原创 个人总结+代码/Android系统信息与安全Part2
小练习/getPackageManagerPMAppInfo public class PMAppInfo { private String appLabel; private Drawable appIcon; private String pkgName; public PMAppInfo() { } public String ge...
2018-04-22 19:09:03
213
原创 个人总结/Activity生命周期
1.起源 系统采用Activity栈的方法来管理Activity2.形态 1.Active/Running Activity处于栈顶 2.Paused 被新Activity(非全屏或透明)替代栈顶地位时—>Paused状态(只有内存极低,会被系统回收) 3.stopped 被新Activity完全覆盖进入stopped,保持状...
2018-04-12 17:43:21
259
原创 代码库/计时器/ValueAnimator
public class Timer extends AppCompatActivity { private TextView tv; @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); ...
2018-04-12 16:56:40
199
原创 个人练习代码库/SVG矢量动画
例1 fillColor属性填充 <vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="200dp" android:width="200dp" android:viewportHeight="100" android:viewportW...
2018-04-12 16:50:58
297
原创 代码库/搜索栏自定义动画(待优化)/AnimatedVectorDrawable
AnimatedVectorDrawable(粘合剂) 用于粘合SVG和动画MainAc @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activi...
2018-04-12 14:52:27
169
原创 代码库/互动按钮/属性动画
Interpolators插值器:可以定义动画变换速率LinearInterpolator:恒定变化的插值器MainAcimport android.animation.AnimatorSet;import android.animation.ObjectAnimator;import android.os.Bundle;import android.os.PersistableBundle...
2018-04-11 21:17:36
202
原创 代码库/点击展开/ValueAnimator
MainAcimport android.animation.ValueAnimator;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v7.app.AppCompatActivity;import android.view.View;import an...
2018-04-11 20:50:53
189
原创 个人练习代码库/ColorMatrix/色调、饱和度、亮度调整
1.创建实例化Bitmap Bitmap.config.ARGB_8888->每个像素存储在4字节上,每通道8位精度2.设置偏移量,颜色参数和色光属性,通过postConcat混合属性tips:在设置好处理的颜色矩阵后,用SetColorFilter方法new一个ColorMatrixColorFilter3.在主方法中,设置图片,实例化,设置初始点progress/Seekbar ...
2018-04-11 16:48:26
806
原创 代码库/自定义View/刮刮乐(待改善)
mPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DST_IN));模式有:SRC_ATOP:不相交地方绘制目标图像,相交处绘制源图像,会受alpha影响。 DST_ATOP:与上相反。 XOR:不想交地方按原样绘制源图像和目标图像相交地方受alpha,颜色影响,都完全不透明,相交处不绘制, 其...
2018-04-11 15:44:33
292
原创 代码库/自定义View/SurfaceView-画板
View孪生兄弟—SurfaceView1.适用于被动更新2.在子线程刷新3.在底层实现双缓冲机制使用1.继承自SurfaceView 两个接口 SurfaceHolder.Callback,Runnable2.在构造方法中初始化画笔等3.实现surfaceCreated、surfaceChanged、surfaceDestroyed三个方法tips:canvas实例化 surfaceHolder...
2018-04-10 20:53:14
217
原创 代码库/自定义View/随手指拖动View
import android.content.Context;import android.graphics.Color;import android.support.annotation.Nullable;import android.util.AttributeSet;import android.view.MotionEvent;import android.view.View;...
2018-04-10 15:38:56
158
原创 代码库/DragView/自由拖动
ViewDragHelper DrawerLayout/SlidingPaneLayout1.初始化ViewDragHelper ViewDragHelper通常定义在一个ViewGroup内部,并通过其静态工厂方法进行初始化 ...
2018-04-10 15:33:50
595
原创 个人练习代码库/自定义View/绘制表盘
import android.content.Context;import android.graphics.Canvas;import android.graphics.Paint;import android.util.AttributeSet;import android.view.View;/** * Created by YRC on 2017/10/20. */pu...
2018-04-10 14:44:41
198
原创 个人练习代码库/渐变(自定义View)
import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.BitmapShader;import android.graphics.Canvas;import android.graphics.Col...
2018-04-09 19:01:05
180
原创 代码库/新添加通知AIDL
Book Parcelable类:import android.os.Parcel;import android.os.Parcelable;/** * Created by YRC on 2017/12/5. */public class Book implements Parcelable { public int bookId; public String b...
2018-04-08 16:25:36
179
原创 个人总结/个人练习代码库/Binder连接
10个AIDL与10个Service->10个AIDL+1个Service 工作机制:每个业务模块创建自己的AIDL接口,并实现接口,向服务端提供自己的唯一标识和其对应的Binder对象 对于服务端:提供一个queryBinder接口,根据业务模块特征来返回相应的Binder对象BinderPool练习AIDL接口1.ICompute接口(提供计算加法)interface ...
2018-04-08 16:17:35
268
原创 个人总结/AIDL
AIDL(Android Interface Definition Language) AIDL是android接口定义语言,为了实现进程间通信,进程并发下的进程间通信默认支持:1.Java的8种基本数据类型 2.String 3.char 4.List 5.Map 6.Parcelable 7.AIDL【定向TAG】:AIDL中的定向tag表示了在跨进程通信中数据的流向 ...
2018-04-08 15:41:56
211
原创 个人总结/Android中的IPC方式
1.使用Bundle(实现了Parcelable接口) Activity,Service,Receiver都支持在Intent中传递Bundle数据。2.使用文件共享(两个进程通过读/写同一个文件夹来交换数据)3.使用Messenger(可以在不同进程中传递Message对象) 在Message中放入传递数据,底层实现为AIDL (大量并发请求,不适合使用) ...
2018-04-06 14:43:26
195
原创 个人总结/Binder+AIDL自动生成Java文件中的代码分析
此类继承了android.os.IInterface这个接口,同时它自己也是接口(所以可以在Binder中传输的接口都需要继承此接口) 结构: 1.声明两个方法,同时声明了两个整型id表示两方法(用于标识在transact过程中,客户端请求的方法) 2.声明一个内部类Stub->Binder类 客...
2018-04-02 20:08:31
353
原创 个人总结/IPC机制
IPC机制(Inter-Process Communication)进程间通信或跨进程通信 进程:指一个执行单元,一个进程可包含多个线程 线程:是cpu调度的最小单元,是一种有限的系统资源进程间的通信方式:Binder/Socket开启多进程(在manif...
2018-04-01 18:24:42
240
原创 个人练习代码库/聊天界面
基于recyclerView的简单设计1.在ViewHolder中获取xml中的对象2.在Adapter构造方法中获取list对象,并在onBindViewHolder中获取到Msg对象3.在MainAc中设置recycler中的LinearLayoutManagerMainAcpublic class MainActivity extends AppCompatActivity { pr...
2018-04-01 17:24:35
306
原创 代码库/自动显示/隐藏布局的具有弹性的ListView
1.给ListView增加一个HeaderView,避免第一个Item被Toolbar遮挡 Tips:getResources().getDimension(R.dimen.abc_action_bar_default_height_material)获取系统ActionBar高度(即Toolbar高度)2.获取最低滑动距离 touchSlop = ViewConfiguration....
2018-04-01 15:43:17
328
原创 代码库/点击可变换item View的ListView/FocusListView
自定义ListViewAdapter 重写getView方法,判断item位置,变换对应的View 在MainActivity item点击事件中调用notifyDataSetChanged变动viewMainAc@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(saved...
2018-03-31 17:16:37
146
原创 个人练习代码库/波浪变化音频条/自定义view
import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.LinearGradient;import android.graphics.Paint;import android.graphics.Shader;im...
2018-03-30 17:32:25
261
原创 个人练习代码库/点击转圈自定义View
import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Rect;import android.graphics.RectF;import androi...
2018-03-30 17:19:30
349
原创 个人练习代码库/自制TextView
import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.LinearGradient;import android.graphics.Matrix;import android.graphics.Paint;im...
2018-03-30 17:17:52
252
原创 工具类/自定义顶栏
import android.content.Context;import android.content.res.TypedArray;import android.graphics.drawable.Drawable;import android.os.Build;import android.util.AttributeSet;import android.view.Gravity...
2018-03-30 17:16:52
217
原创 模板工具类/Parcelable
import android.os.Parcel;import android.os.Parcelable;import java.io.Serializable;import java.lang.reflect.ParameterizedType;/** * Created by YRC on 2017/3/6. */public class Person implement...
2018-03-29 20:53:18
289
原创 工具类/日志工具
public class LogUtil { public static final int VERBOSE=1; public static final int DEBUG=2; public static final int INFO=3; public static final int WARN=4; public static final int E...
2018-03-29 20:49:29
215
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人