<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[L]]></title><description><![CDATA[to be a better man]]></description><link>https://blog.youkuaiyun.com/a8688555</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; a8688555]]></copyright><item><title><![CDATA[Android opengl es 3.0 + ndk 绘画涂鸦项目]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/114613191</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/114613191</guid><author>a8688555</author><pubDate>Wed, 10 Mar 2021 02:41:12 +0800</pubDate><description><![CDATA[前言

写一个opengl es 3.0 + ndk 的绘画涂鸦项目，命名为白板哈哈哈，记录自己遇到的问题，顺便学到的知识整合一遍，算是对自己一段时间的总结。

项目地址：Whiteboard
如果对你有帮助，不妨点个start支持一下。感谢
效果图

调研如何绘制，具体思路？
主要调研的结果是方式有两种，一种是使用原生的 api 线条+drawPath 绘制贝塞尔曲线 而笔触纹理 可以通过 Canvas 生成圆点bitmap。
输出可以使用两个bitmap作为交换显示，形成一个双缓冲机制。
我之前写了一.]]></description><category></category></item><item><title><![CDATA[通俗易懂的 OpenGL ES 3.0（四）NDK VAO VBO]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/110383908</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/110383908</guid><author>a8688555</author><pubDate>Mon, 30 Nov 2020 12:36:16 +0800</pubDate><description><![CDATA[前言

接着上篇，说说 vbo，vao,以及默认的顶点储存。 所以 通过绘制 简易坐标线 以及 三角来说明为什么要用这几个玩意吧。 =v=!!!

效果图
绘制坐标线以及三角形
入门必备三角形好吧，好比程序入门届的hello world。所以就画多两条坐标线。
跟上篇那个背景绘制的流程差不多，总的来说就是借助GLSurfaceView提供的环境，在渲染的回调里面做合适的事情就好了，就不写那么详细了，详细的具体可以看看上篇。
头文件就省略了直接写核心的实现 TriangleDemo.h(略)
Triangle]]></description><category></category></item><item><title><![CDATA[通俗易懂的 OpenGL ES 3.0（三）NDK集成opengl]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/109895989</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/109895989</guid><author>a8688555</author><pubDate>Sun, 22 Nov 2020 01:28:35 +0800</pubDate><description><![CDATA[前言

额。 好久好久没有更新了，近期有空会加更几篇。 聊聊openGl ES 3.0 NDK集成，记录一些个人的见解，以及理解吧，希望对大家有所帮助。

最终效果
演示demo
画一个基佬紫背景

NDK ？
在集成opengl之前,先简单的了解下，什么是ndk，什么是jni,和为什么要用c++去写opengl

ndk： 生成so库的工具包，帮助开发者快速开发C（或C++）的动态库，总的来说就一工具包。
jni   :   java 本地接口， 你要调用c/c++ 就要写着玩意。跟接口很像。

简单例子]]></description><category></category></item><item><title><![CDATA[Android 常见的greenDao升级方式]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/103566782</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/103566782</guid><author>a8688555</author><pubDate>Mon, 16 Dec 2019 17:42:15 +0800</pubDate><description><![CDATA[greenDao 升级方式
默认的升级方案是会删除表后在创建
//默认实现
public static class DevOpenHelper extends OpenHelper {
        public DevOpenHelper(Context context, String name) {
            super(context, name);
        }

 ...]]></description><category></category></item><item><title><![CDATA[Android 对于MVVM模式的理解]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/101803861</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/101803861</guid><author>a8688555</author><pubDate>Tue, 01 Oct 2019 14:13:53 +0800</pubDate><description><![CDATA[前言
…MVP已经火爆的好几年了，自己也写了一些对于MVP的理解
Android常见的MVP模式与封装，感兴趣的可以去看看，哈哈，但是用了几年发现这玩意还是有很大的缺陷，最不爽的就是，写下来就是接口接口接口接口，虽然可以用契约类写在一起，或者直接用模板去生成对应模块的接口以及类，但是也显得麻烦。还要自己去定制一个个模板类。还有就是如果P层持有的VIew没有处理好。也会照成内存的泄露。所以对应这些原...]]></description><category></category></item><item><title><![CDATA[Android 关于一些首页复杂布局的写法]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/100887063</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/100887063</guid><author>a8688555</author><pubDate>Tue, 17 Sep 2019 01:06:18 +0800</pubDate><description><![CDATA[好久没有更新文章了，呈这几天有空把。关于自己在实际项目中遇到的首页布局，以及一些自己的做法分享给大家把。=v=!,望大家取其精华去其糟粕。

先看看效果图-v-!!

大家如果遇到这总一般新手肯定会先采取这个RecycleView与NestedScrollView的嵌套。或者是一个大的RecycleView+RecycleView进行嵌套。这样做也不是不可以，只是性能方面不尽人意。
思路：所以...]]></description><category></category></item><item><title><![CDATA[通俗易懂的 OpenGL ES 3.0（二）渲染三角形]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/83722463</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/83722463</guid><author>a8688555</author><pubDate>Wed, 21 Nov 2018 23:28:17 +0800</pubDate><description><![CDATA[前言

学习了OpenGL有一段时间，在绘制出属于自己的三角形之前，会接触许多理论上的知识。用简单的方式写下自己对OpenGL的一些见解。望大家取其精华去其糟粕

最终效果：改变背景色，并且绘制渲染一个暗红色的三角形

如何绘制

准备好顶点与片段着色器
GLSurfaceView作为OpenGL的载体
编译着色器，创建GL程序
为着色器赋值，并绘制

OpenGL需要我们至少设置一个顶点和一个片...]]></description><category></category></item><item><title><![CDATA[通俗易懂的 OpenGL ES 3.0（一）入门必备知识！！]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/82819646</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/82819646</guid><author>a8688555</author><pubDate>Sun, 23 Sep 2018 23:42:55 +0800</pubDate><description><![CDATA[前言

opengl的入门是个难点,因为在绘制出图形之前,你必须要学习一大堆的概念，以及部分图形知识。以至于在代码中不迷路-v-!!.接下来就通俗的讲解下部分概念知识。希望大家取其精华去其糟粕

顶点（Vertex）
&amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;nbsp;opengl物体图形都由]]></description><category></category></item><item><title><![CDATA[MPAndroidChart LineChart 折线图 你要的都在这里了]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/80344159</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/80344159</guid><author>a8688555</author><pubDate>Mon, 28 May 2018 22:05:43 +0800</pubDate><description><![CDATA[



前言


    MPAndroidChart已经出了很长的一段时间，相信大家也有所耳闻，自己也使用了有一段时间，固在此写下文章，根据项目的需求，记录一些见解与问题，作为参考。望大家取其精华去其糟粕。






最终效果图





涉及到的问题以及知识点


图表样式以及基础数据 （快速入门）
x轴标签自定义标签（Formatting Data Values (ValueFormatt...]]></description><category></category></item><item><title><![CDATA[Android recycleView 的一些优化与相关问题]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/79634295</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/79634295</guid><author>a8688555</author><pubDate>Wed, 21 Mar 2018 02:43:58 +0800</pubDate><description><![CDATA[recycleView 也出来很长时间了，记录一些自己见到的recycleView优化吧。 




1.recyclerView.setHasFixedSize(true);

Item的高度是固定的，设置这个选项可以提高性能.总得来说就是就是避免整个布局绘制。就是避免requestLayout.

具体的可以看看stackoverflow的这个几个问题

Understandin...]]></description><category></category></item><item><title><![CDATA[Android 开源漫画项目ComicMTC]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/79407112</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/79407112</guid><author>a8688555</author><pubDate>Wed, 28 Feb 2018 23:46:40 +0800</pubDate><description><![CDATA[



前言


  　由于喜欢看漫画，顺便练练手，把最近学到的知识整合一遍， 
  　在线漫画阅读器,项目采用 MVP + RxJava + Retrofit + Dagger2+rxlifecycle .功能上现在只是简单的基本功能。这篇文章主要是记录项目中的难点疑问，以及介绍这个项目


项目github 地址，如果对你有帮助，不妨点个start支持一下。感谢





总体的框架搭建

该...]]></description><category></category></item><item><title><![CDATA[Android 常见的MVP模式与封装]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/79383270</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/79383270</guid><author>a8688555</author><pubDate>Tue, 27 Feb 2018 17:07:48 +0800</pubDate><description><![CDATA[



前言


  　mvp模式大名已久，相信每个人都已经耳熟能详了。说说自己为什么要使用？ 
  　早期mvp没有流行的同时，mvc模式就是当时的扛把子，但爱之深恨之切，每当接手别人的项目，需要改别人的代码的时候，那真是日了GOU了。activity单单是逻辑代码少则百多则千，这也是mvc的诟病之一，但是mvp就方便了许多，只要找到与其相关的m或者p改改也就差不多了。
  
  　所以在我看来...]]></description><category></category></item><item><title><![CDATA[Dagger2的入坑指南[捂脸][详]！！]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/78792793</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/78792793</guid><author>a8688555</author><pubDate>Thu, 21 Dec 2017 12:46:36 +0800</pubDate><description><![CDATA[前言
   dagger2的文章从寥寥可数到现在的数不胜数，可见其热门程度。
  
  这篇文章主要是记录我对dagger2的理解，从基本使用，到实际运用，由浅入深。以及dagger2的一些变化。
  
  希望大家能取其精华,去其糟粕，谢谢。
目录结构
前言
为什么要使用dagger2
从需求的角度
从开发者的角度
基本的使用
inject
Component
Module
Provides
基本]]></description><category></category></item><item><title><![CDATA[Android常见的上滑渐变显示标题栏]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/76904590</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/76904590</guid><author>a8688555</author><pubDate>Tue, 08 Aug 2017 14:25:28 +0800</pubDate><description><![CDATA[前言*


  ~(￣0￣)/， 最近发现很多的APP都有标题渐变的效果，于是就想着写一篇文章记录记录。
  
  废话少说，直接上动图 ，看看市面上常见的上滑渐变的标题栏。






小米商场和淘宝电影





分析



相信大家也有过这种需求.其实这很简单。我们可以通过这个 

控件.setAlpha(percent);方法去达到上图的效果。

参数范围是 0~1

还有个方法是

se]]></description><category></category></item><item><title><![CDATA[android 自定义Button,抛弃写shape文件]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/72783489</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/72783489</guid><author>a8688555</author><pubDate>Sat, 27 May 2017 17:52:13 +0800</pubDate><description><![CDATA[前言
  
  在日常的android开发当中,按钮是必不可少控件。但是如果要实现下面的效果恐怕写shape文件都要写的头晕  
  
  
  w(ﾟДﾟ)ww(ﾟДﾟ)w，所以为了以后的开发，我们就简单的封装下。
代码块很简单我们通过GradientDrawable 类就可以实现啦。public class ButtonStyle extends Button {     GradientDra]]></description><category></category></item><item><title><![CDATA[为什么你要重写View的onMeasure()？]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/53638936</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/53638936</guid><author>a8688555</author><pubDate>Wed, 14 Dec 2016 14:22:58 +0800</pubDate><description><![CDATA[前言:只是帮助一些初学者对这个方法的理解  (￣0 ￣)y go。
  在Android自定义控件当中，几乎都会重写这个方法，相信很多初学者看到这个方法是一脸茫然.(╯‵□′)╯︵┻━┻        …下面我就简单带你去了解了解。
 首先我们先继承View 重写 onMeasure      @Override
    protected void onMeasure(int widthMeasu]]></description><category></category></item><item><title><![CDATA[org.hibernate.PropertyAccessException: Null value was assigned to a property of primitive type sette]]></title><link>https://blog.youkuaiyun.com/a8688555/article/details/43565287</link><guid>https://blog.youkuaiyun.com/a8688555/article/details/43565287</guid><author>a8688555</author><pubDate>Fri, 06 Feb 2015 15:42:56 +0800</pubDate><description><![CDATA[org.hibernate.PropertyAccessException: Null value was assigned to a property of primitive type sette
数据库里amount字段值为NULL，进行对象持久化关联时，企图给对象的这个属性赋值为空，而对象实例的这个属性不能为空值，所以出现错误。【amount是int型，不能为空】
 
 解决方法：将]]></description><category></category></item></channel></rss>