Android Animation Interpolator

动画插值器,用来描述动画的变化率,这里讨论的 Interpolator 指的是 android.animation 包下的 TimeInterpolator。 以下所有的插值器都继承自 Interpolator , 而 Interpolator 接口直接继承自 TimeInterpolator , 自身并没有添加任何方法。 TimeInterpolator 中有 abstract float getInterpolation(float input) 方法,参数 input:input 参数是一个 float 类型,它取值范围是 0 到 1,表示当前 Read more ...

2016-09-06 Android , AndroidDev

Android ImageView ScaleType

ImageView 的 ScaleType 属性决定了图片在 View 上显示时的样子,是比例缩放,还是显示图片的整体或者局部等等。对于一张图片,有其自身的大小,而 ImageView 也有其自身的大小,这两者如何完美的合作其结果很重要的设置便是 ScaleType 属性。 设置该属性的方式有两种: 在布局 Layout 中 ImageView 中定义 android:scaleType="center" 在代码中调用 imageView.setScaleType(ImageView.ScaleType.CENTER); 8 种 Sca Read more ...

2016-09-05 Android , AndroidDev

Android Animation

Android 的动画实现有不同的方式,在 3.0 以前 Android 的动画很简单只能在 View 层做,在后期版本中不断的加入动画实现,至今已经有这非常完善的动画系统了。Android 系统提供了 Property animation 和 View animation 两大动画系统。除去这两大动画系统之外,还有一类 Drawable Animation, 允许加载 drawable 并且一帧一帧播放: View Animation 视图动画 Property Animation 属性动画 Drawable Animation 帧动画 Read more ...

2016-09-04 Android , AndroidDev , Animation

《Effective Java》读书笔记

Java 语言中存在四种类型: 接口 interface 类 class 数组 array 基本类型 primitive type 前三种是引用类型,类实例和数组是对象,基本类型不是对象。 在 Java 中一共有 8 种基本数据类型,其中有 4 种整型,2 种浮点类型,1 种用于表示 Unicode 编码的字符单元的字符类型和 1 种用于表示真值的 boolean 类型。(一个字节等于 8 个 bit) 整型 类型 存储需求 bit 数 取值范围 Read more ...

2016-09-02 android , java , design-pattern

画图工具收集

画图工具整理,平时少许的画图需求,所以找了这些网站,Draw.io 还是不错的,简单的流程图都能搞定。 所见即所得 Draw.io 国外的免费画图网站,支持 Google Drive,Dropbox 等等 https://draw.io gliffy 所见即所得,有 Chrome 扩展,可离线,和 Google Drive 有结合 https://www.gliffy.com/ ProcessOn 国内的画图网站,可以实时写作 https://www.processon.com/ Visio 微软出的绘图软件,但 Read more ...

2016-08-28 draw , grach , collection

Grub2 bootloader 主题

之前把 Linux Mint Grub2 bootloader 的背景图片更换了一下,直接用的 gnome-look 的 Anonymous Hope 主题 ,这里就记录一下,以便快速恢复。 Gnome-look 这个网站上有非常多人分享的内容,可以到这个网站自行选择自己喜欢的内容。 Usage 一般 grub 的主题需要在 /boot/grub/themes 目录下。如果没有这个目录需要手动创建 sudo mkdir -p /boot/grub/themes 然后将下载的文件内容拷贝到该目录下。完成拷贝之后需要修改一下 /etc/defaul Read more ...

2016-08-26 grub2 , bootloader , theme , grub-theme

让网站在分享时预览更美观

在最近用 Telegram 分享网页的时候,Telegram 会预先抓取网页形成一个缩略预览,但是如果是自己的网站没有适配一些 meta 信息,抓取出来的信息就非常不堪入目。所以优化一下网站在分享的时候的预览图,这个术语叫做 Rich Previews,想查看网站是否已经优化好,可以查看下面的网站: http://richpreview.com/ 想要好看的预览需要如下的标签 Title 最长 65 个字符,否则 Google 结果就会被截断 Meta description 最好小于 155 字符 og:title 最好不超 Read more ...

2016-08-25 website , html , meta , share , preview

Python 经典项目整理:阅读好的代码

阅读经典的项目是学习的起点。 Howdoi Howdoi 是代码搜寻工具,使用 Python 编写。 Flask Flask 是基于 Werkzeug 和 Jinja2,使用 Python 的微框架。它能够快速启动,并且开发意图良好。 Diamond Diamond 是 python 的守护进程,它收集指标,并且将他们发布至 Graphite 或其它后端。 它能够收集 cpu, 内存,网络,i/o,负载和硬盘指标。除此,它拥有实现自定义收集器的 API,该 API 几乎能 从任何资源中获取指标。 Werkzeug Werkzeug 起 Read more ...

2016-08-16 python , project , structure , reading , flask

Python 项目的结构

之前和朋友聊天,说到 Python 项目的结构问题,Python 确实是一门比较灵活的语言,你可以单独执行某个文件,把这些文件扔到一起看起来像个工程,但是外人来看其实就是一个个独立的小文件,小模块,对于小型项目来说可能并不会造成什么问题,但是对于大型项目,尤其是如果需要多人合作,有一个关于工程结构的基本认识是非常必要的。 Python 没有强制的结构规范,但是有一个大家的共识 README.rst LICENSE setup.py requirements.txt sample/__init__.py sample/core.py sample/he Read more ...

2016-08-13 python , project , structure , management

国行 Moto 360 2代一周使用感受

在拿到 moto 360 2代国行之前就已经做过调研, 国行并不支持国际版 Android Wear 程序同步,需要用国内阉割版 Android Wear 连接,并且不能使用 Play Store 中各种定制表盘及Android wear 应用。虽然可以通过使用 国际版 Android Wear 1.3 版本连接并同步 moto 360 来激活并使用各种表盘及应用,但是拿到手使用一个星期之后,我依然还是对国行 moto 360 2代表示失望。 在没有了 Google Now 的情况下,语音几乎是不可用状态,国行所带的出门问问,在国际版 Android Read more ...


最近文章

  • 我 Vibe Coding 了一个日本看房神器:BukkenAI 最近在东京认真找房子,每次拿到一个物件地址,我都要重复做同样一套操作:打开 [[Google Maps]] 搜地址,确认大概位置;找最近的车站,看步行距离;切到 Yahoo 地图查灾害风险图;再搜一圈附近有没有超市、医院、药局。做完一遍下来,十几分钟就过去了,物件多的时候,这些重复的信息收集工作比看房本身还累。某天做完第 N 遍之后,我决定干脆自己做一个工具,输入地址,全部自动搞定。这就是 BukkenAI 的起点。
  • Entire:让 AI 编程会话成为 Git 历史的一部分
  • Atuin:用数据库替换 Shell 历史,跨设备同步不再是难题
  • Ghostty 终端配置技巧:从入门到舒适 从 Warp 切换到了 [[Ghostty]],理由非常简单,我使用 atuin 来同步 Shell 历史,但是 Warp 不支持,外加上 Ghostty 自带 Metal GPU 加速渲染、原生 macOS AppKit 构建、启动飞快,可以让 AI 以纯文本方式配置,就果断切换了。
  • GitNexus:把你的代码库变成 AI 能读懂的知识图谱 用 AI 写代码这件事,大家都已经习惯了。但一个尴尬的现实是:AI 在修改代码的时候,经常不知道自己改的那个函数被多少地方调用、改完之后会不会连锁反应把别的功能搞崩。这不是 AI 模型不够聪明,而是它看不到代码库的全貌——依赖关系、调用链路、执行流程,这些结构性的信息在普通的文件搜索里是丢失的。