【Android】2015.09.04 第一行代码 Day4 Count:6

来源:互联网 发布:网络监测工具 编辑:程序博客网 时间:2024/06/06 16:25
-----------------------------------------------
第一行代码
Day3
第三章
创建自定义控件
-----------------------------------------------
Questions
1. 如何px的实际大小与分辨率有关,那pt呢?一方面 1pt = 1.333333px ,另一方面 1pt = 1/72 in

2. java 里面比较字符串想通 为什么不能用== 是因为比较的指针么?

3.layout_weight 不是把剩下的空白区进行瓜分么?1:1 为啥都是平分,因为水平的这两个空间我都是定的wrap_content,
瓜分都得要等wrap完吧,难道不是瓜分剩下的?

Points
1.  px:像素 像素的实际大小与图片的尺寸和分辨率有关。假设水平方向图片长度为L,分辨率为D,则一个像素的大小=L/D,例如L=200mm,                      D=800,则L/D=0.25mm
     pt:磅数1 Point = 1.3333333333333 Pixel
     in:英寸 1 inches = 2.54 cm


» Pixel Conversions:
  • Pixel↔m   1 m = 3779.5275593333 Pixel
  • Pixel↔dm   1 dm = 377.95275593333 Pixel
  • Pixel↔cm   1 cm = 37.795275593333 Pixel
  • Pixel↔mm   1 mm = 3.7795275593333 Pixel
  • Pixel↔in   1 in = 96 Pixel
  • Pixel↔ft   1 ft = 1152 Pixel
  • Pixel↔Pica   1 Pica = 16 Pixel
  • Pixel↔Point   1 Point = 1.3333333333333 Pixel
  • Pixel↔Twip   1 Pixel = 15 Twip
» Point Conversions:
  • Point↔m   1 m = 2834.6456695 Point
  • Point↔dm   1 dm = 283.46456695 Point
  • Point↔cm   1 cm = 28.346456695 Point
  • Point↔mm   1 mm = 2.8346456695 Point
  • Point↔Pixel   1 Point = 1.333333 Pixel
  • Point↔in   1 in = 72 Point
  • Point↔ft   1 ft = 864 Point
  • Point↔Pica   1 Pica = 12 Point
  • Point↔Twip   1 Point = 20 Twip

2. 我对dpi(dots per inch)的理解
首先,像素的实际大小是与分辨率(D),屏幕尺寸(L)有关的
所以说同样的200px在不同分辨率不同屏幕尺寸的长度是不一样的。这就要求有一个能衡量L D 变量影响的单位,也就是dpi(密度):屏幕每英寸包含的像素点。
现在像素的实际大小就只是与dpi有关(关联变量减少了,很好的方法)
所以,现在在160dpi的手机上,1dp = 1px ,320dpi的手机上, 1dp = 2px
这样就保证了,在任何device上,xxdp永远是一样长的,比如说:160dp永远是1inch(2.54cm)。
问题来了,保证了我想设置的长度在任何device上都是一样长的,但是不同device的长度是不一样的啊?
别人的理解
http://www.captechconsulting.com/blogs/understanding-density-independence-in-android
http://blog.csdn.net/jiangwei0910410003/article/details/40509571

2. draw9patch
学会用draw9patch刻画可拉伸地方(左面黑边,上边黑边),以及内容现实区域(右边,下边黑边)

3. 学会理清思路,列出思路,和写好重要id名在编程
比如聊天界面的实现
导入资源图片 
  • received background
  • send background
定制MainActivity布局:(main_activity.xml)
  • ListView ( msg_list_view )
  • EditText ( input_text )
  • Button  (send)
定制cell布局msg: ( msg_item.xml )
  • LinearLayout ( left_layout )
  • TextView ( left_msg )
  • LinearLayout ( right_layout )
  • TextView ( right_msg )
定义Msg类
  • String content
  • int type
  • int RECEIVED = 0, Int SEND = 1
定义MsgAdatper
  • 构造函数
  • getView()
MainActivity
  • 数据
  • 定义Send Button 


Term;
1.  resolution ratio  分辨率
0 0
原创粉丝点击