Android UI

1. 常用的控件

  1. TextView:显示一段文本
  2. Button: 一个按钮
  3. EditText: 文本输入框
  4. ImageView: 图片显示
  5. ProgressBar: 进度条
  6. AlertDialog:对话框
  7. ProgressDialog:进度对话框

2. 四种布局

  1. LinearLayout:线性布局:
  android:orientation: "vertical | horizontal"
  android:layout_gravity="bottom | top | center_vertical"
  ...
  1. RealtiveLayout: 相对布局:
  android:layout_alignParentLeft="true"
  android:layout_alignParentTop="true"
  android:layout_alignParentRight="true"
  android:layout_alignParentBottom="true"
  android:layout_alignCenterInParent="true"
  android:layout_above="true"
  android:layout_toLeftOf="true"
  android:layout_toRightOf="true"
  android:layout_below="true"
  ...
  1. FrameLayout:Fragment用到
  2. TableLayout:
  

3. ListView

采用viewHolder对控件实例进行缓存

  ....Adapter...{
    @Override
    public View getView(int position, View convertView, ViewGroup parent){
      ViewHolder viewHolder;
      if(convertView == null){
        viewHolder = new ViewHolder();
        viewHolder.name = "****";
        ...
        convertView.setTag(viewHolder);
      }else{
        viewHolder = (ViewHolder)convertView.getTag();
      }
      ....opt ViewHolder...
    }
  }

4. 单位和尺寸

  • 像素px: Android中的像素指的是物理像素,而css中的像素指的是相对像素。以iphone6为例,它的物理像素是:750×1334,而其css像素是:375×667,这里会牵扯到一个设备像素比(devicePixelRatio)的概念,可以参考移动端高清、多屏适配方案前几部分。
  • dpi: Android中的密度单位,密度是指屏幕每英寸所包含的像素数。假设一个屏幕的长宽为:3英寸2英寸,分辨率为320480像素和640*960像素时,密度分别为160dpi和320dpi。
  • dp:密度无关像素的意思,也被称为dip,它可以保证在不同密度的屏幕中显示比例保持一致。在160dpi的屏幕中,1dp==1px,而在320dpi的屏幕中,1dp==2px。
  • sp:和dp类似,可以保证在不同分辨率屏幕中的字体显示比例保持一致。

5. Nine-patch图片:

保证图片不被拉伸,制作工具:draw9patch。参考文章:Android Nine-patch(.9.png)小结

你可能感兴趣的:(Android UI)