Android开发规范
- 格式:doc
- 大小:38.00 KB
- 文档页数:7
1、安卓app设计规范之尺寸或分辨率目前最新安卓手机的屏幕尺寸都是5.5英寸啦。
我们都知道安卓机的尺寸很多很杂。
而且不同的分辨率对应不同的dpi模式。
Android也支持多种不同的dpi模式:ldpi mdpi hdpi xhdpi xxhdpi xxxhdpi(4K分辨率)关于安卓APP设计的dpi详细解读请查看:1、Android界面设计专业术语:xxxhdpi和4K分辨率2、Android APPUI设计师必知:pt sp dp之间的关系以及换算公式3、Android界面设计适配不同屏幕的尺寸和密度解读目前主流的安卓手机分辨hdpi,对应800*480的手机。
主流机型,很多。
如小米1 ,1s 三星htc 等xdpi,对应1280*720的手机。
三星Galaxy系列和华为p6.xxdpi,对应1080*1920的手机。
小米手机,华为荣耀手机系列为主加上 htc one。
下面是当面流行的安卓手机的屏幕尺寸和分辨率:小米3和小米4 屏幕尺寸和分辨率: 5英寸1920×1080像素魅族MX2 屏幕尺寸和分辨率: 4.4英寸1280×800像魅族MX3 屏幕尺寸和分辨率: 5.1英寸1800×1080像素HTC one屏幕尺寸和分辨率: 4.7英寸1920×1080像素华为荣耀6屏幕尺寸和分辨率: 5英寸1920×1080像素华为p6屏幕尺寸和分辨率: 4.7英寸1280×720像素华为p7屏幕尺寸和分辨率:5英寸1920×1080像素在目前我们的安卓APP设计项目当中,我们并不会去为每一种分辨率去设计一套UI界面。
这是一种追求完美和理想的状态。
小公司肯定是耗不起这样的。
所以,这个时候我们需要学会变通。
为了适应多分辨率,1:在标准基础(xdpi:1280*720)上开始,然后放大或缩小,以适应到其他尺寸。
2:从设备的最大尺寸(xxdpi:1920×1080)开始,然后缩小,并适应到所需的最小屏幕尺寸。
相信很多人都在开发设计APP时会遇到很多界面上的问题,要以多大尺寸来设计?分辨率是多少?该怎么切图给开发等等下面的文字就给出一点点技巧总结,但也要给合团队在开发时的习惯。
每个工程师们所使用的控件,书写布局习惯来实际移交的图是不一样的,但八九不离十,都是遵循一个原则,便捷开发、自适应强的开发模式IOS篇一、尺寸及分辨率iPhone界面尺寸:320*480、640*960、640*1136iPhone6:4.7英寸(1334×750),iPhone6 Plus:5.5英寸(1920×1080)设计图单位:像素72dpi。
在设计的时候并不是每个尺寸都要做一套,尺寸按自己的手机来设计,比较方便预览效果,一般用640*960或者640*1136的尺寸来设计,现在iphone6和plus出来后有很多人会使用6的设计效果。
如果是我来做的话,我会使用640×1136,对plus做单独的修改适配,因为plus的屏幕实在是大了,遵循屏大显示更多内容的原则这里本应该是需要修的了。
有更好办法的话希望大家可以分享一下。
Ps:作图的时候确保都是用形状工具(快捷键:U)画的,这样更方便后期的切图或者尺寸变更。
二、界面基本组成元素iPhone的app界面一般由四个元素组成,分别是:状态栏(status bar)、导航栏(navigation)、主菜单栏(submenu)、内容区域(content)。
这里取用640*960的尺寸设计,那我们就说说在这个尺寸下这些元素的尺寸。
状态栏(status bar):就是我们经常说的信号、运营商、电量等显示手机状态的区域,其高度为:40px导航栏(navigation):显示当前界面的名称,包含相应的功能或者页面间的跳转按钮,其高度为:88px主菜单栏(submenu,tab):类似于页面的主菜单,提供整个应用的分类内容的快速跳转,其高度为:98px内容区域(content):展示应用提供的相应内容,整个应用中布局变更最为频繁,其高度为:734px至于我们经常说的iPhone5/5s的640*1136的尺寸,其实就是中间的内容区域高度增加到910px。
移动应用开发技术的代码规范随着移动互联网的快速发展,移动应用程序成为人们日常生活中不可或缺的一部分。
无论是iOS还是Android平台上的应用程序开发,都需要遵循一定的代码规范,以保证代码的可读性、可维护性和可扩展性。
本文将介绍一些常见的移动应用开发技术的代码规范,帮助开发者编写高质量的移动应用程序。
I. 命名规范在移动应用开发中,良好的命名规范可以提高代码的可读性。
可以按照以下几个方面进行命名规范:1. 类名和接口名:使用首字母大写的驼峰命名法,例如:MainActivity, LoginActivity。
2. 方法名:使用小写字母开头的驼峰命名法,例如:getUserInfo, checkLogin。
3. 变量名:使用小写字母开头的驼峰命名法,例如:userName, isLogin。
4. 常量名:使用全部大写的下划线分隔命名法,例如:MAX_NUMBER, DEFAULT_VALUE。
II. 缩进和空格良好的缩进和空格规范可以使代码更易读。
可以按照以下几个方面进行规范:1. 使用4个空格缩进代码块,而不是制表符。
2. 在逗号、分号、运算符等之后添加一个空格。
3. 在代码块之间添加一个空行,提高可读性。
III. 注释规范注释是代码中必不可少的一部分,可以帮助其他开发者理解代码的意图。
可以按照以下几个方面进行注释规范:1. 使用行注释来解释代码中的关键步骤、算法或者复杂逻辑。
2. 使用块注释来解释类、方法或者整个代码块的功能。
3. 注释应该与代码保持同步,不要注释无用的代码,以免造成混淆。
IV. 异常处理在移动应用开发中,异常处理是一个重要的方面,可以提高代码的稳定性。
可以按照以下几个方面进行异常处理规范:1. 使用try-catch-finally块来捕获和处理异常。
2. 不要使用空的catch块,应该对异常进行适当的处理或者记录。
3. 在finally块中释放资源,确保资源的正确关闭。
V. 代码重用代码重用是提高开发效率和代码质量的重要手段。
android开发规范Android开发规范是指在开发Android应用时,遵循一定的规范和标准,以提高代码的可读性、可维护性和效率。
下面是一些常见的Android开发规范:1. 代码风格:- 使用具有描述性的变量和方法名。
- 使用驼峰命名法来命名变量和方法,如myVariable、myMethod。
- 使用四个空格来进行缩进。
- 每行代码不超过80个字符。
- 注释代码以解释其作用和使用方法。
- 使用空行来分隔逻辑上独立的代码段。
2. 包命名规范:- 包名应该使用全部小写字母。
- 包名应该使用独有的前缀来避免与其他库或项目的包名冲突。
3. 类命名规范:- 类名应该使用大写字母开头的驼峰命名法。
- 类名应该具有描述性,能够清晰表达其作用。
4. 方法命名规范:- 方法名应该使用小写字母开头的驼峰命名法。
- 方法名应该具有描述性,能够清晰表达其功能。
5. 变量命名规范:- 变量名应该使用小写字母开头的驼峰命名法。
- 变量名应该具有描述性,能够清晰表达存储的数据内容。
6. 资源文件命名规范:- 资源文件名应该使用小写字母和下划线。
- 资源文件名应该具有描述性,能够清晰表达其作用和用途。
7. 文件组织规范:- 项目应该按照模块和功能将代码文件组织起来,便于维护和扩展。
- 项目应该遵循MVC或MVVM等设计模式来组织代码结构。
8. 异常处理规范:- 应该捕获和处理可能发生的异常,以避免应用崩溃。
- 应该根据具体业务需求,将异常信息显示给用户或进行日志记录。
9. 注释规范:- 应该对代码进行必要的注释,以解释其作用和使用方法。
- 注释应该简洁明了,避免冗长和重复。
10. 性能优化规范:- 应该尽量避免在主线程中进行耗时操作,以提高应用的响应性能。
- 应该合理使用缓存和异步操作,以提高应用的数据加载和处理速度。
总结:Android开发规范是一种标准化的开发方式,可以提高开发效率和代码质量。
通过遵循这些规范,可以帮助开发者更好地组织代码、提高代码可读性、减少BUG产生的可能性、降低维护成本,同时也有利于多人开发协作。
android设计规范Android设计规范是指在开发Android应用程序时,遵循一定的设计原则和规范,以提高用户体验和应用程序的可用性。
下面将介绍一些常见的Android设计规范。
1. Material Design:Material Design是Google推出的一种设计语言,用于创建具有一致外观和交互的应用程序。
它包括使用卡片、阴影、动画和明亮的颜色等元素来传达层次结构和重点。
2. 色彩使用:在Android应用程序中,选择适合主题和品牌的色彩方案非常重要。
应该遵循Material Design中的色彩准则,并确保颜色在不同屏幕上的一致性和可读性。
3. 字体使用:选择适合应用程序的字体,并在整个应用程序中保持一致。
字体应可读,并且大小、加粗和斜体等样式应有合理的使用。
4. 图标设计:在应用程序中使用图标可以增强用户的可用性和交互性。
图标应当简洁明了,并具有适当的大小和比例。
同时,应该使用向量图标,以便在不同屏幕分辨率上保持清晰度。
5. 导航和布局:在设计应用程序的导航和布局时,应遵循常见的导航模式和布局原则。
例如,使用底部导航栏、抽屉式导航和标签页等来帮助用户浏览和导航应用程序。
6. 响应式设计:设计响应式布局,以适应不同大小和分辨率的设备,例如手机和平板电脑。
这意味着应该使用相对单位(如dp)而不是固定像素,并通过约束布局和可伸缩组件来适应不同的屏幕尺寸。
7. 动画和转换:使用动画和转换可以增加用户体验和可用性。
例如,使用渐变、淡入淡出和缩放等动画来提供视觉效果和反馈。
8. 可访问性:为了让残障人士能够使用应用程序,应该遵循可访问性准则,包括使用适当的颜色对比度、提供语音辅助和键盘导航等。
9. 图形和图片:在应用程序中使用图形和图片可以增加用户的吸引力和参与度。
应该选择高质量的、与应用程序内容相关的图形和图片,并压缩它们以提高性能。
10. 安全性和隐私:在设计应用程序时,要考虑用户的隐私和数据安全。
android studio 命名规则Android Studio是一款由谷歌开发的集成开发环境(IDE),用于开发Android应用程序。
作为一名开发人员,了解并遵守Android Studio的命名规则对于开发高质量的应用程序至关重要。
本文将详细介绍Android Studio的命名规则,以帮助开发人员编写规范、清晰的代码。
一、包名命名规则在Android Studio中,包名是用来组织和管理项目中的类的。
包名应该以小写字母开头,使用小写字母和数字的组合。
包名应该反映出类的功能和用途,避免使用无意义的名称。
例如,一个用于管理用户信息的包可以命名为"er"。
二、类名命名规则类名应该以大写字母开头,采用驼峰命名法。
类名应该具有描述性,能够清晰地表达出类的功能和用途。
例如,一个用于显示用户信息的类可以命名为"UserInfoActivity"。
三、变量命名规则变量名应该以小写字母开头,采用驼峰命名法。
变量名应该具有描述性,能够清晰地表达出变量的用途和含义。
例如,一个用于保存用户姓名的变量可以命名为"userName"。
四、常量命名规则常量名应该全部大写,使用下划线分隔单词。
常量名应该具有描述性,能够清晰地表达出常量的含义和用途。
例如,一个表示圆周率的常量可以命名为"PI"。
五、方法命名规则方法名应该以小写字母开头,采用驼峰命名法。
方法名应该具有描述性,能够清晰地表达出方法的功能和用途。
例如,一个用于计算两个数相加的方法可以命名为"addNumbers"。
六、布局文件命名规则布局文件名应该全部小写,使用下划线分隔单词。
布局文件名应该具有描述性,能够清晰地表达出布局文件的内容和用途。
例如,一个用于显示用户信息的布局文件可以命名为"activity_user_info.xml"。
七、资源文件命名规则资源文件名应该全部小写,使用下划线分隔单词。
移动互联网移动应用开发规章制度手册一、前言随着移动互联网的快速发展,移动应用成为人们生活中不可或缺的一部分。
为了规范移动应用的开发过程,提高应用的质量和安全性,本手册制定了一系列规章制度,供移动应用开发者参考和遵守。
二、开发环境要求1. 开发语言:移动应用开发主要使用Java、Objective-C、Swift等语言进行开发,开发者应具备相应的编程能力。
2. 开发工具:推荐使用Android Studio、Xcode等集成开发环境进行应用开发。
3. 设备要求:开发者需要拥有一台运行稳定的计算机,并安装必要的开发环境和工具。
三、应用设计规范1. 用户界面设计:应用的用户界面应符合人机工程学原理,简洁、直观易用。
2. 图标设计:应用的图标应简洁明了,符合应用的功能和风格。
3. 响应速度:应用的响应速度应尽可能快,用户操作不应出现明显的卡顿或延迟现象。
四、应用开发规范1. 代码规范:应用的代码应遵循一致的命名规范,注释清晰,易于维护和阅读。
2. 安全性考虑:应用的敏感信息应进行合理的加密处理,防止信息泄露。
3. 兼容性:应用应具备良好的兼容性,能够适应不同版本的操作系统和不同分辨率的设备。
4. 异常处理:应用应具备完善的异常处理机制,能够对各种异常情况进行及时捕获和处理。
五、应用测试规范1. 单元测试:在应用开发过程中,应进行单元测试,确保每个模块的功能正常。
2. 集成测试:在应用开发完成后,进行集成测试,确保各个模块之间的协作功能正常。
3. 性能测试:对应用的性能进行测试,评估其在大量用户同时使用的情况下的表现。
4. 安全测试:对应用的安全性进行测试,发现并修复潜在的安全漏洞。
六、应用发布规范1. 应用商店审核:在发布应用前,开发者需要将应用提交至相关应用商店进行审核,确保应用符合相关政策和法规。
2. 版本管理:应用的发布需要进行版本管理,确保每个版本的改进和修复都有明确的记录。
3. 用户反馈:开发者应及时回复用户的反馈和建议,并修复存在的问题。
android规范Android规范是指在开发Android应用程序时,遵循一系列约定和最佳实践的指南。
这些规范旨在帮助开发者编写高质量、易维护和可扩展的Android应用程序。
以下是一些常见的Android规范:1. 命名规范:- 使用驼峰式命名法(首字母小写)命名类和变量。
- 使用全大写字母和下划线(大写)命名常量。
- 使用有意义的名称,避免使用缩写和无意义的名称。
2. 代码结构:- 使用MVC、MVP或MVVM等设计模式来组织代码。
- 将相关功能模块的代码组织在不同的包中,便于维护和扩展。
- 将代码分成不同的模块,每个模块只负责一项功能。
3. 注释规范:- 使用适度的注释来解释代码的用途和实现细节。
- 注释应该清晰、简洁和易于理解。
- 避免不必要的注释,例如对于显而易见的代码。
4. 图片资源:- 为了适应不同屏幕密度的设备,使用不同尺寸和分辨率的图片资源。
- 使用.9.png格式的图片资源来实现可调整大小的图标和背景。
5. XML布局:- 使用约束布局或线性布局等灵活的布局方式。
- 避免使用绝对布局,因为它不适应不同屏幕尺寸和方向的变化。
- 使用dp(密度无关像素)而不是px(像素)作为尺寸单位。
6. 使用资源文件:- 将字符串、颜色、样式和尺寸等可复用的值定义在资源文件中。
- 使用资源文件提高应用程序的可维护性和可扩展性。
7. 异步操作:- 避免在主线程上执行耗时操作,使用异步任务或线程池来处理这些操作。
- 使用Handler或AsyncTask等工具来处理与UI相关的异步操作。
8. 多语言支持:- 使用字符串资源文件来支持多语言。
- 避免在代码中硬编码字符串,而是使用资源ID来引用字符串。
9. 性能优化:- 避免在循环中执行耗时操作。
- 使用适当的数据结构和算法来减少内存和CPU的使用。
- 避免频繁的对象创建和销毁,尽量重用对象。
10. 处理异常:- 使用try-catch块来捕获和处理异常。
安卓的规范Android是目前最流行的移动操作系统之一,随着智能手机的普及和应用的快速发展,为了保持良好的用户体验和开发环境,Google制定了一系列的规范和指南供开发者遵循。
下面是Android的一些规范:1. Material Design规范:Material Design是Google推出的一套设计语言,旨在为Android提供一致的用户界面设计和交互模式。
该规范包括颜色、排版、图标、动画等方面的指导,帮助开发者创建美观、直观的应用。
2. App安全规范:为了保护用户的隐私和数据安全,Android有一些安全规范供开发者注意。
例如,应用需要获得用户的授权才能访问敏感权限,如定位、摄像头等。
同时,开发者应遵循HTTPS加密传输数据,以防止数据泄露和网络攻击。
3. UI布局规范:Android提供了一系列的UI控件和布局管理器,开发者应遵循一致的UI布局规范。
例如,应使用ConstraintLayout替代RelativeLayout,使用RecyclerView替代ListView等。
此外,还需要考虑不同屏幕大小和分辨率的适配性。
4. 代码规范:为了提高代码的可读性和可维护性,Android有一套代码规范供开发者参考。
例如,变量和函数命名应具有描述性,注释应详细解释代码的功能,避免使用魔法数等。
此外,还需要遵循一致的代码结构和代码风格,以便于项目的协作开发。
5. 性能优化规范:Android设备资源有限,性能优化是开发者必须考虑的问题。
为了提高应用的响应速度和减少耗电量,开发者需要遵循一些性能优化的规范。
例如,避免在UI线程执行耗时操作,使用合适的缓存策略,减少网络请求等。
6. 国际化规范:Android是一个全球化的操作系统,为了满足不同语言和文化的用户需求,开发者需要遵循一些国际化规范。
例如,应用需要支持多语言,提供合适的日期、时间和货币格式,注意文本长度的动态调整等。
7. 广告和隐私规范:在应用开发中使用广告时,开发者需要遵循一些广告规范以及用户隐私保护的规范。
一、Android编码规范
1.java代码中不出现中文,最多注释中可以出现中文
2.局部变量命名、静态成员变量命名
只能包含字母,单词首字母出第一个外,都为大写,其他字母都为小写3.常量命名
只能包含字母和_,字母全部大写,单词之间用_隔开
yout中的id命名
命名模式为:view缩写_模块名称_view的逻辑名称
view的缩写详情如下
LayoutView:lv
RelativeView:rv
TextView:tv
ImageView:iv
ImageButton:im
Button:btn
5.activity中的view变量命名
命名模式为:逻辑名称+view缩写
建议:如果layout文件很复杂,建议将layout分成多个模块,每个模块定义一个moduleViewHolder,其成员变量包含所属view
6.strings.xml中的id命名
命名模式:activity名称_功能模块名称_逻辑名称/activity名称_逻辑名称/common_逻辑名称strings.xml中,使用activity名称注释,将文件内容区分开来
7.drawable中的图片命名
命名模式:activity名称_逻辑名称/common_逻辑名称
8.styles.xml:将layout中不断重现的style提炼出通用的style通用组件,放到styles.xml中;
9.使用layer-list和selector
10.图片尽量分拆成多个可重用的图片
11.服务端可以实现的,就不要放在客户端
12.引用第三方库要慎重,避免应用大容量的第三方库,导致客户端包非常大
13.处理应用全局异常和错误,将错误以邮件的形式发送给服务端
14.图片的.9处理
15.使用静态变量方式实现界面间共享要慎重
16.Log(系统名称模块名称接口名称,详细描述)
17.单元测试(逻辑测试、界面测试)
18.不要重用父类的handler,对应一个类的handler也不应该让其子类用到,否则会导致message.what冲突
19.activity中在一个View.OnClickListener中处理所有的逻辑
20.strings.xml中使用%1$s实现字符串的通配
21.如果多个Activity中包含共同的UI处理,那么可以提炼一个CommonActivity,把通用部分叫由它来处理,其他activity只要继承它即可
22.使用button+activitgroup实现tab效果时,使用Button.setSelected(true),确保按钮处于选择状态,并使activitygroup的当前activity与该button对应
23.如果所开发的为通用组件,为避免冲突,将drawable/layout/menu/values目录下的文件名增加前缀
24.数据一定要效验,例如
字符型转数字型,如果转换失败一定要有缺省值;
服务端响应数据是否有效判断;
25.同一个客户端如果要放在不同的市场,而且要统计各个市场下载及使用数据时
针对不同的客户端打不同的包,唯一的区别是versionName,apk文件名为versionName.apk 在升级时,要将自己的versionCode和versionName一并传给服务端,如果需要升级,则下载versionName相对应的apk
关于是否要强制升级:
1).不管何种情况都强制升级
2).判断用户的版本和当前最新版本,如果兼容则强制升级,否则可选;
26.有的按钮要避免重复点击
二、Android性能优化
1.http用gzip压缩,设置连接超时时间和响应超时时间
http请求按照业务需求,分为是否可以缓存和不可缓存,那么在无网络的环境中,仍然通过缓存的httpresponse浏览部分数据,实现离线阅读。
2.listview 性能优化
1).复用convertView
在getItemView中,判断convertView是否为空,如果不为空,可复用。
如果couvertview 中的view需要添加listerner,代码一定要在if(convertView==null){}之外。
2).异步加载图片
item中如果包含有webimage,那么最好异步加载
3).快速滑动时不显示图片
当快速滑动列表时(SCROLL_STATE_FLING),item中的图片或获取需要消耗资源的view,可以不显示出来;而处于其他两种状态(SCROLL_STATE_IDLE 和
SCROLL_STATE_TOUCH_SCROLL),则将那些view显示出来
4).list中异步加载的图片,当不在可视范围内,按照一定的算法及时回收(如在当前可视范围的上下10条item以外的图片进行回收,或者将图片进行缓存,设置一个大小,按照最近最少使用原则超过部分进行回收)
5).BaseAdapter避免内存溢出
如果BaseAdapter的实体类有属性非常消耗内存,可以将保存到文件;为提高性能,可以进行缓存,并限制缓存大小。
3.使用线程池,分为核心线程池和普通线程池,下载图片等耗时任务放置在普通线程池,避免耗时任务阻塞线程池后,导致所有异步任务都必须等待
4.异步任务,分为核心任务和普通任务,只有核心任务中出现的系统级错误才会报错,异步任务的ui操作需要判断原activity是否处于激活状态
1).主线程不要进行网络处理;
2).主线程不要进行数据库处理;
3).主线程不要进行文件处理;
5.尽量避免static成员变量引用资源耗费过多的实例,比如Context
6.使用WeakReference代替强引用,弱引用可以让您保持对对象的引用,同时允许GC在必要时释放对象,回收内存。
对于那些创建便宜但耗费大量内存的对象,即希望保持该对象,又要在应用程序需要时使用,同时希望GC必要时回收时,可以考虑使用弱引用。
7.超级大胖子Bitmap
及时的销毁(Activity的onDestroy时将bitmap回收,在被UI组件使用后马上进行回收会抛RuntimeException: Canvas: trying to use a recycled bitmap android.graphics.Bitmap) 设置一定的采样率(有开发者提供的图片无需进行采样,对于有用户上传或第三方的大小不可控
图片,可进行采样减少图片所占的内存),从服务端返回图片,建议同时反馈图片的size
巧妙的运用软引用
drawable对应resid的资源,bitmap对应其他资源
任何类型的图片,如果获取不到(例如文件不存在,或者读取文件时跑OutOfMemory异常),应该有对应的默认图片(默认图片放在在apk中,通过resid获取);
8.保证Cursor 占用的内存被及时的释放掉,而不是等待GC来处理。
并且Android明显是倾向于编程者手动的将Cursor close掉
9.线程也是造成内存泄露的一个重要的源头。
线程产生内存泄露的主要原因在于线程生命周期的不可控
10.如果ImageView的图片是来自网络,进行异步加载
11.应用开发中自定义View的时候,交互部分,千万不要写成线程不断刷新界面显示,而是根据TouchListener事件主动触发界面的更新
12.Drawable
ui组件需要用到的图片是apk包自带的,那么一律用setImageResource或者setBackgroundResource,而不要根据resourceid
注意:get(getResources(), R.drawable.btn_achievement_normal)该方法通过resid转换为drawable,需要考虑回收的问题,如果drawable是对象私有对象,在对象销毁前是肯定不会释放内存的。
13.复用、回收Activity对象
临时的activity及时finish
主界面设置为singleTask
一般界面设置为singleTop
14.位置信息
获取用户的地理位置信息时,在需要获取数据的时候打开GPS,之后及时关闭掉
15.在onResume时设置该界面的电源管理,在onPause时取消设置
三、AndroidUI优化
yout组件化,尽量使用merge及include复用
2.使用styles,复用样式定义
3.软键盘的弹出控制,不要让其覆盖输入框
4.数字、字母和汉字混排占位问题:将数字和字母全角化。
由于现在大多数情况下我们的输入都是半角,所以字母和数字的占位无法确定,但是一旦全角化之后,数字、字母的占位就和一个汉字的占位相同了,这样就可以避免由于占位导致的排版问题。
5.英文文档排版:textview自动换行时要保持单词的完整性,解决方案是计算字符串长度,然后手动设定每一行显示多少个字母并加上‘\n‘
6.复杂布局使用RelativeLayout
7.自适应屏幕,使用dp替代pix
8.使用android:layout_weight或者TableLayout制作等分布局
9.使用animation-list制作动画效果。