Introduction

一个为设计师设计的APP( ´_ゝ`)一个特别简单项目

主要用来练习Rx,当然这个适合初入Rx的看看。

自己参考的教程给 Android 开发者的 RxJava 详解

Github地址:Gifts-for-designers
希望给个star鼓励下( ´_ゝ`)

Usage

( ´_ゝ`) 好像这个项目没有很多代码需要解释,不过我还是整理一份

自定义字体

//      字体
Typeface fontFace = Typeface.createFromAsset(getAssets(),
"font/Inconsolata.otf");
Typeface tvFontFace = Typeface.createFromAsset(getAssets(), "font/Lobster.ttf");
editTextHEX.setTypeface(fontFace);
editTextRGB.setTypeface(fontFace);
textView.setTypeface(tvFontFace);

Rx监听输入

RxTextView.textChanges(editTextHEX).subscribeOn(AndroidSchedulers.mainThread()).debounce(300, TimeUnit.MICROSECONDS).map(new Func1<CharSequence, String>() {@Overridepublic String call(CharSequence charSequence) {return charSequence.toString();}}).observeOn(AndroidSchedulers.mainThread()).doOnNext(new Action1<String>() {@Overridepublic void call(String s) {if (s.length() == 5) {setBackground("56abe4", 0);editTextRGB.setText("");}if (!colors.isEmpty()) {colors.clear();adapter.notifyDataSetChanged();}}}).filter(new Func1<String, Boolean>() {@Overridepublic Boolean call(String s) {return s.length() > 5;}}).observeOn(AndroidSchedulers.mainThread()).subscribe(new Action1<String>() {@Overridepublic void call(String s) {setBackground(s, 0);
//                        addColorAdapter(s);changeToRGB(s);}})

改变背景颜色(有个过渡效果)

    /*** @param color* @param mark  0:HEX 1:RGB*/public void setBackground(String color, int mark) {int i = 0;ValueAnimator paramInteger;Drawable localDrawable = this.relativeLayout.getBackground();if ((localDrawable instanceof ColorDrawable))i = ((ColorDrawable) localDrawable).getColor();if (mark == 0) {paramInteger = ValueAnimator.ofObject(new ArgbEvaluator(), i, Color.parseColor("#" + color));} else {paramInteger = ValueAnimator.ofObject(new ArgbEvaluator(), i, mark);}paramInteger.setDuration(500L);paramInteger.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {public void onAnimationUpdate(ValueAnimator paramAnonymousValueAnimator) {relativeLayout.setBackgroundColor((Integer)paramAnonymousValueAnimator.getAnimatedValue());}});paramInteger.start();}

将16进制转化成RGB

    private void changeToRGB(String s) {int red = Integer.parseInt(String.valueOf(s.charAt(0)) + s.charAt(1), 16);int green = Integer.parseInt(String.valueOf(s.charAt(2)) + s.charAt(3), 16);int blue = Integer.parseInt(String.valueOf(s.charAt(4)) + s.charAt(5), 16);Log.d(TAG, red + " " + green + " " + blue);editTextRGB.setText("(" + red + "," + green + "," + blue + ")");}

Todo&Issues

  • [x] 搭配色算法推荐

  • [ ] 搭配色展示(RecyclerView)

  • [ ] 目前只做了16进制颜色,RGB有些逻辑问题

  • [ ] 删除过快会有卡顿(不知道如何解决)

  • [ ] 颜色保存列表

截图

RxJava初入学习(一)之Gifts-for-designers相关推荐

  1. 「每周论文推荐」 初入深度学习CV领域必读的几篇文章

    https://www.toutiao.com/a6718570271269192200/ 很多朋友都希望我们开通论文推荐和阅读板块,那就开吧,此专栏名为<每周论文推荐>.在这个专栏里,还 ...

  2. 【每周论文推荐】 初入深度学习CV领域必读的几篇文章

    很多朋友都希望我们开通论文推荐和阅读板块,那就开吧,此专栏名为<每周论文推荐>.在这个专栏里,还是本着有三AI一贯的原则,专注于让大家能够系统性完成学习,所以我们推荐的文章也必定是同一主题 ...

  3. Java学习—初入Java

    一.初入Java 文章目录 一.初入Java 2.JDK的目录介绍 3.PATH环境变量 4.ClassPath环境变量 5.编写第一个Java程序 6.Java的运行机制 7.Java包的定义与使用 ...

  4. 初入深度学习4——如何修改一个深度学习库

    初入深度学习4--如何修改一个深度学习库 学习前言 深度学习库的组成 修改目标定位 举例 一.任务介绍 二.目标定位 三.变量分析 四.修改代码 总结 学习前言 在学习过一个深度学习库之后,如果想要满 ...

  5. 初入Android~系统化学习必备(转自http://bbs.weand.com/read-htm-tid-6142.html)

    初入Android~系统化学习必备 什么是Android手机? 答:简单的说Android手机是运行在谷歌Android手机操作系统上的手机统称为Android手机,也可称为gphone手机. 目前A ...

  6. 个人java学习路线-html初入

    个人java学习路线-html初入 简单介绍 第一个html html基本标签 html实体符号 html的表格 创建表格和表格简单格式 表格合并 html的表格-thead tbody tfoot ...

  7. 初入深度学习1——如何下载与打开一个Github深度学习库

    初入深度学习1--如何下载与打开一个Github深度学习库 学习前言 下载一个仓库 一.Github 1.Download Zip(不推荐,但可用) a.打开网址 b.下载文件 c.下载与解压文件 2 ...

  8. 初入职场的我怎么就成了个打杂的,我是这样破局的 No.146

    本文为转载文章,转载于公众号:一名叫大蕉的程序员 这么快就到6月份了,又到一大批有为青少年离开象牙塔摩拳擦掌准备进入职场大干一番的季节.但很多人也开始迷茫起来,毕竟啊,那个以考试成绩为唯一标记性成果的 ...

  9. 【青春须早为,岂能长少年】一个初入职场程序员的阶段总结

    作者:陌北有棵树,Java人,架构师社区合伙人! 2019届毕业的小伙伴们,都应该已经入职快两个月了吧,从学校踏入工作,想必都有很多新的感悟和想法吧,我在这里写下我作为新人的的思考和总结,困惑与迷茫. ...

最新文章

  1. 实习生离职,HR恼羞成怒:我要全行业封杀你
  2. java中关于DecimalFormat四舍五入的用法
  3. Shell-实际业务操作01
  4. 6.编译器拓展SEH
  5. 这届年轻人连穷都不怕,还会怕冷?
  6. 28个经过重新设计的著名博客案例
  7. nginx实现ip端口转发_Nginx实现端口转发
  8. es6 数组合并_对比 ES5,学习 ES6(一)
  9. 使用 python 的 urllib2和 urllib模块爆破 form 表单的简易脚本
  10. 【Python】Paramiko模块在Windows10中import ssl报错的处理方法
  11. 【Java】利用for循环打印心型
  12. python 抓取微博评论破亿_如果利用Python分析14亿条数据!资深程序员手把手教你!过亿级!...
  13. redis 分布式锁 看门狗_redis分布式锁原理及实现
  14. 引物设计软件_你的引物设计进行得如何了?这份PCR引物设计及软件使用技巧供你参考...
  15. 几何画板中该如何插入公式
  16. EasyUI 中combobox利用拼音进行检索
  17. [笔记]PLC可程式模拟器1
  18. java背景颜色代码_java设定背景颜色
  19. [转]如何实现按键精灵的简单路点行走
  20. 【iOS-Cocos2d游戏开发之十】添加粒子系统特效并解决粒子特效与Layer之间的坐标问题;

热门文章

  1. 各大网站屏蔽搜索引擎抓取分析
  2. 关于spring中commons-attributes-compiler.jar的使用问题
  3. date string 转化为weekday
  4. c++ 虚函数_到底什么情况下会合成默认构造函数?
  5. 怎么用python判断数据是否已经存在于表里_数据基本操作(二)
  6. 简单介绍.Net性能测试框架Crank的使用方法
  7. 无线红外探测器03-环境搭建及程序详解
  8. C语言实现长整数连加,二个超长正整数的相加
  9. .ne中的控制器循环出来的数据如何显示在视图上_Web程序设计-ASP.NET MVC4数据库操作实例...
  10. 【Java】LeetCode 225. 用队列实现栈