Welcome to Ray's Blog

Stay Hungry Stay Foolish - Steve Jobs

0%


概述

获取 View 的位置信息

  • mLeft = getLeft(): view 左上角横坐标相对于父容器左边框的距离;
  • mRight = getRight(): View 右下角横坐标相对于父容器左边框的距离;
  • mTop = getTop(): View 左上角纵坐标相对于父容器上边框的距离;
  • mBottom = getBottom():View 右下角纵坐标相对于父容器上边框的距离;
  • getTranslationX():View 左上角横坐标相对于mLeft的偏移量;
  • getTranslationY(): View 左上角纵坐标相对于mTop的偏移量;
  • getX()=mLeft+getTranslationX():平移后(mLeft 不变),View 左上角横坐标相对于父容器左边框的距离;(TranslationY 默认为 0);
  • getY=mTop+getTranslationY():平移后(mTop 不变),View 左上角纵坐标相对于父容器上边框的距离;(TranslationY 默认为 0);
  • event.getX():获取当前点击事件相对于 View 本身的横坐标;
  • event.getY():获取当前点击事件相当于 View 本身的纵坐标;
  • event.getRawX():获取当前点击事件在屏幕上的横坐标;
  • event.getRawY(): 获取当前点击事件在屏幕上的纵坐标;
Read more »


概述

在项目中需要使用字符串格式化的方式,优化项目代码,这里特此做个笔记!

内容

常规类型的格式化

String 类的 format()方法用于创建格式化的字符串以及连接多个字符串对象。熟悉 C 语言的同学应该记得 C 语言的 sprintf()方法,两者有类似之处。format()方法有两种重载形式。
format(String format, Object… args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。

format(Locale locale, String format, Object… args) 使用指定的语言环境,制定字符串格式和参数生成格式化的字符串。

Read more »


概述

效果需求:页面分俩部分:pageUp 和 pageDown,俩部分均 extends ScrollView 拥有滑动效果。当界面分别处于上下页面时,需要判断其内部的内容是否可以滚动,并执行相应的滚动策略。如果滑动到上下界面交界处,则根据滑动的距离是否超过设定滑动距离判断是滑动进入另一页,还是继续留在本页。如果在上下界面交界处滑动距离没有超过设定的滑动距离,那么会有阻尼回弹的效果恢复到 pageUp 的底部或者 pageDown 的顶部。

Read more »


ActionBar 知识点:

  1. setHomeButtonEnabled这个小于 4.0 版本的默认值为 true 的。但是在 4.0 及以上的是 false,该方法的作用:决定左上角的图标是否可以点击。没有向左的小图标。true:图标可以点击,false 不可以点击;

  2. actionBar.setDisplayHomeAsUpEnabled(true)给左上角图标的左边加上一个返回的图标。对应 ActionBar.DISPLAY_HOME_AS_UP;

Read more »


定义

ThreadLocal是一个线程内部的数据存储类,通过它可以在指定的线程中存储数据,数据存储以后,只有在指定的线程中可以获取到存储的数据,对于其他线程来说则无法获取到数据。

Read more »


概述

内存简介

RAM(Random Access Memory) 随机存取存储器:内存。
通常分为:

  • 寄存器(Registers):速度最快的存储场所,因为寄存器位于处理器内部,我们的程序中无法控制;
  • 栈(stack):存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中;
  • 堆(heap):存放基本由 new 创建的对象和数组。在堆中分配的内存,由 Java JVM 的自动回收器(GC)来管理;
  • 静态域(static field):静态存储区就是指在固定的位置存放应用程序运行时一直存在的数据,Java 在内存中专门划分了一个静态存储区域来管理一些特殊的数据变量如静态的数据变量;
  • 常量池(constant pool):JVM 必须为每个被转载的类型维护一个常量池。常量池就是该类型所用到常量的一个有序集合,包括直接常量(String、Integer 等常量)和其他类型,字段和方法的符号引用。

外存储:SD 卡等外置存储区域。

Read more »


概述

CopyOnWriteArrayListArrayList的一个线程安全的变体,其中所有可操作方法(add/set 等)都是通过底层数组进行一次新的复制来实现的。

Read more »


概述

定义:一个发布/订阅的事件总线框架。
包含:

  • 发布者poster
  • 订阅者subscriber
  • 事件event
  • 总线thread
Read more »


注解概述

在 Java 中,注解(Annotation)引入始于 Java5,用来描述 Java 代码的元信息,通常情况下注解不会直接影响代码的执行,尽管我们使用一些特定类型的注解也可以达到这一目的。

Read more »