一、Android学习API指南:【了解】
1. 应用的组成部分 App Components
1.1. 应用的基本原理 App Fundamentals
1.2. Activity Activities
1.2.1. 片段 Fragments
1.2.2. 加载器 Loaders
1.2.3. 任务和返回堆 Tasks and Back Stack
1.3. Service服务 Services
1.3.1. 绑定服务 Bound Services
1.3.2. AIDL Android Interface Definition Language
1.4. 内容提供器 Content Providers
1.4.1. 内容提供器基础 Content Providers Basics
1.4.2. 创建一个内容提供器 Creating a Content Provider
1.4.3. 日历提供器 Calendar Provider
1.4.4. 通信录提供器 Contact Provider
1.5. 意图和意图过滤器 Intents and Intents Filters
1.6. 进程和线程 Process and Threads
1.7. 权限系统 Permissions
1.8. 窗口小部件 App Widgets
1.9. Android清单 Android Manifest
2. 用户界面 User Interface
2.1. 概述 Overview
2.2. 布局 Layout
2.2.1. 线形布局 Linear Layout
2.2.2. 相对布局 Relative Layout
2.2.3. 列表视图 ListView
2.2.4. 网格视图 GridView
2.3. 输入控件 Input Controls
2.3.1. 按钮 Buttons
2.3.2. 文本区域 Text Fields
2.3.3. 复选框 Checkboxes
2.3.4. 单选按钮 Radio Buttons
2.3.5. 开关按钮 Toggle Buttons
2.3.6. 下拉列表 Spinners
2.3.7. 选择器 Pickers
2.4. 输入事件 Input Events
2.5. 菜单 Menus
2.6. 动作条 Action Bar
2.7. 设置 Settings
2.8. 对话框 Dialogs
2.9. 状态通知 Notifications
2.10. Toast通知 Toasts
2.11. 搜索 Search
2.11.1. 创建一个搜索界面 Creating a Search Interface
2.11.2. 增加当前搜索提醒 Adding Recent Query Suggestions
2.11.3. 增加个性化提醒 Adding Custom Suggestions
2.11.4. 搜索配置 Searchable Configuration
2.12. 拖放操作 Drag and Drop
2.13. 可访问性 Accessibility
2.13.1. 应用程序的可访问性 Making Applications Accessible
2.13.2. 构建可访问性服务 Building Accessibility Services
2.14. 风格和主题 Styles and Themes
2.15. 自定义控件 Custom Components
3. 应用程序资源 App Resources
3.1. 概述 Overview
3.2. 提供的资源 Providing Resources
3.3. 对资源的访问 Accessing Resources
3.4. 运行时变化的处理 Handling Runtime Changes
3.5. 本地化 Localization
3.6. 资源类型 Resource Types
3.6.1. 动画 Animation
3.6.2. 状态颜色列表 Color State List
3.6.3. 图形处理类资源 Drawable
3.6.4. 布局 Layout
3.6.5. 菜单 Menu
3.6.6. 字符串 String
3.6.7. 样式 Style
3.6.8. 其他类型 More Types
4. 动画和图形 Animation and Graphics
4.1. 概述 Overview
4.2. 属性动画 Property Animation
4.3. 补间动画 View Animation
4.4. 帧动画 Drawable Animation
4.5. 画布和绘制 Canvas and Drawables
4.6. OpenGL OpenGL ES
4.7. 硬件加速 Hardware Acceleration
5. 高性能计算 Computation
5.1. RenderScript编程 RenderScript
5.2. RenderScript编程进阶 Advanced RenderScript
5.3. 运行时API说明 Runtime API Reference
6. 多媒体和照相机 Media and Camera
6.1. 媒体播放 Media Playback
6.2. 支持的媒体格式 Supported Media Formats
6.3. 音频捕获 Audio Capture
6.4. JET引擎 JetPlayer
6.5. 照相机 Camera
7. 定位和传感器 Location and Sensors
7.1. 定位和地图 Location and Maps
7.2. 定位策略 Location Strategies
7.3. 传感器概述 Sensors Overview
7.4. 手势传感器 Motion Sensors
7.5. 位置传感器 Position Sensors
7.6. 环境传感器 Environment Sensors
8. 通信 Connectivity
8.1. 蓝牙 Bluetooth
8.2. NFC通信 NFC
8.2.1. NFC基础 NFC Basics
8.2.2. NFC进阶 Advanced NFC
8.3. Wi-FI直连 Wi-Fi 2P
8.4. USB通信 USB
8.4.1. 附件模式 Accessory
8.4.2. 主机模式 Host
8.5. SIP协议 SIP
9. 文本输入法 Text and Input
9.1. 复制和粘贴 Copy and Input
9.2. 创建一个输入法 Creating an IME
9.3. 拼写检查器 Spelling Checker
10. 数据存储 Data Storage
10.1. 存储选项 Storage Options
10.2. 数据备份 Data Backup
10.3. 应用程序安装位置 App install Locaiton
11. 系统管理员 Administration
11.1. 硬件管理 Device Policies
12. web应用 Web Apps
12.1. 概述 Overview
12.2. web应用的屏幕适配 Targeting Screens from Web Apps
12.3. 利用webview构建web应用 Building Web Apps in WebView
12.4. 调试web应用 Debugging Web Apps
12.5. web应用的优化 Best Practices for Web Apps
13. 更好的策略
13.1. 一致性(兼容性) Compatibility
13.2. 支持多屏幕 Supporting Multiple Screens
13.2.1. 适配指定屏幕 Distributing to Specific Screens
13.2.2. 屏幕兼容模式 Screen Compatibility Mode
13.3. 支持平板和手机 Supporting Tablets and Handsets
14. Google提供的服务 Google Services
14.1. 应用程序内部付费机制
14.2. 应用程序内部付费机制概述
14.3. 如何使用应用程序付费服务
14.4. 订阅机制
14.5. 安全与设计
14.6. 测试应用程序付费服务
14.7. 应用程序付费机制的管理
14.8. 应用程序付费的相关API
14.9. 应用程序许可机制
14.10. 许可机制概述
14.11. 设置许可机制
14.12. 在应用中增加许可
14.13. 许可机制API
14.14. Google软件商店服务
14.15. 在Google Play中加过滤器
14.16. 多APK支持
14.17. 对APK附加文件的服务
14.18. Google云消息服务
14.19. 如何使用google云服务
14.20. 架构概述
14.21. 演示教程
14.22. Google云服务进阶
14.23. 信息迁移
- android:id
- android:background
- android:onClick 为该控件的单击事件绑定监听器
- android:padding 设置控件四周的填充区域
- android:visibility 设置该控件是否可见(invisible/visible/gone)
- android:alpha 设置该组件透明度(0-1之间的数值)
- android:layout_height 子组件的布局高度
- android:layout_width 子组件的布局宽度
- android:layout_margin 设置子组件的外边距
- layout_toRightOf 该控件在哪个控件的右侧
- layout_toLeftOf 该控件在哪个控件的左侧
- layout_above 该控件在哪个控件的上侧
- layout_below 该控件在哪个控件的下侧
- layout_alignRight 该控件与哪个控件的右对齐
- layout_alignLeft 该控件与哪个控件的左对齐
- layout_alignTop 该控件与哪个控件的顶对齐
- layout_alignBottom 该控件与哪个控件的底对齐
- layout_alignParentRight 该控件与父布局控件的右对齐吗?
- layout_alignParentLeft 该控件与父布局控件的左对齐吗?
- layout_alignParentTop 该控件与父布局控件的顶端对齐吗?
- layout_alignParentBottom 该控件与父布局控件的底部对齐吗?
- layout_centerInParent 该控件位于父布局控件的中心位置吗?
- layout_centerVertical 该控件位于父布局控件的垂直中心位置吗?
- layout_centerHorizontal 该控件位于父布局控件的水平中心位置吗?
属性说明:设置布局的对齐模式。可以取以下值:alignBounds -- 对齐子视图边界。alignMargins -- 对齐子视图边距。
属性说明:GridLayout的最大列数
属性说明:GridLayout的最大行数
属性说明:GridLayout中子元素的布局方向。有以下取值:horizontal -- 水平布局。vertical -- 竖直布局。
属性说明: 设置该网格布局是否保留列序号。默认是true。
属性说明: 设置该网格布局是否保留行序号。默认是true。
属性说明: 设置GridLayout使用默认的边距。默认值是false。
属性说明: 显示该控件的列。例如,android:layout_column="0",表示在第1列显示该控件;android:layout_column="1",表示在第2列显示该控件。
属性说明: 该控件所在行。例如,android:layout_row="0",表示在第1行显示该控件;android:layout_row="1",表示在第2行显示该控件。它和 android:layout_column类似。
属性说明: 列合并。即该控件所占的列数。例如,android:layout_columnSpan="2",表示该控件占2列。
属性说明: 行合并。即该控件所占的行数。例如,android:layout_rowSpan="2",表示该控件占2行。
属性说明:该控件的布局方式。选项值:
- top -- 控件置于容器顶部,不改变控件的大小。
- bottom -- 控件置于容器底部,不改变控件的大小。
- left -- 控件置于容器左边,不改变控件的大小。
- right -- 控件置于容器右边,不改变控件的大小。
- center_vertical -- 控件置于容器竖直方向中间,不改变控件的大小。
- fill_vertical -- 如果需要,则往竖直方向延伸该控件。
- center_horizontal -- 控件置于容器水平方向中间,不改变控件的大小。
- fill_horizontal -- 如果需要,则往水平方向延伸该控件。
- center -- 控件置于容器中间,不改变控件的大小。
- fill -- 如果需要,则往水平、竖直方向延伸该控件。
- clip_vertical -- 垂直剪切,剪切的方向基于该控件的top/bottom布局属性。若该控件的gravity是竖直的:若它的gravity是top的话,则剪切该控件的底部;若该控件的gravity是bottom的,则剪切该控件的顶部。
- clip_horizontal -- 水平剪切,剪切的方向基于该控件的left/right布局属性。若该控件的gravity是水平的:若它的gravity是left的话,则剪切该控件的右边;若该控件的gravity是 right的,则剪切该控件的左边。
- start -- 控件置于容器的起始处,不改变控件的大小。
- end -- 控件置于容器的结束处,不改变控件的大小。
- TextView 文本视图
- EditText 文本编辑框
- Button 按钮
- ImageView、Gallery 图像视图、画廊(建议过期)
- ImageButton 图片按钮
- ToggleButton 、Switch 开关按钮、开关
- RadioButton 单选按钮
- CheckBox 多选框
- Spinner 下拉列表
- AutoCompleteTextView 自动完成文本框
- ProgressBar 进度条
- SeekBar 拖动条
- RatingBar 星级评分条
- TimePicker、DatePicker 时间选择器、日期选择器
- AnalogClock、DigitalClock 模拟时钟、数字时钟
- Dialog(AlertDialog、ProgressDialog、TimePickerDialog、DatePickerDialog)提示对话框、进度对话框、时间选择对话框、日期选择对话框
- ListView、GridView 列表视图【最重要的UI组件】、 网格视图
- ScrollView 滚动视图
- ExpandableListView 可展开列表视图
- WebView 网页视图
- SearchView 搜索框
- TabHost 书签选项卡
- Notification 、Toast 通知 、 吐司(短时提醒)
- Menu(OptionMenu /SubMenu、ContextMenu) 菜单(选项菜单、上下文菜单)
- ImageSwitcher、TextSwitcher 、 ViewPager 图像切换器、文本切换器
- ActionBar 动作导航条
- android:ellipsize="start" 省略号在开头
- android:ellipsize="middle" 省略号在中间
- android:ellipsize="end" 省略号在结尾
- android:ellipsize="marquee" 跑马灯显示
- android:ellipsize="marquee"
- android:singleLine="true"
- android:focusable="true"
- android:focusableInTouchMode="true"
- android:marqueeRepeatLimit="marquee_forever"
- android:inputType="textPersonName"
- android:inputType="textPassword"
- android:inputType="numberPassword" 只可以输入数字
- android:inputType="textEmailAddress"
- android:inputType="phone" 只允许输入数字,括号等特殊符号,不可以输入字母。
- android:inputType="textPostalAddress"
- android:inputType="time"
- android:inputType="date"
- android:inputType="number"
所以Button继承了TextView的所有属性。
- dpi dpi指像素密度。dots per inch ,即每英寸内像素点的个数。它不是表示长度的单位。
- 在android中认为:低(120dpi),中(160dpi),高(240dpi),超高(320dpi)。随着技术的增长,实际dpi已经超出这个定义范围。
- dip device independent pixels ,即与设备无关的像素。目前这个单位已经被dp所取代,而不建议使用dip。
- dp 与dip的概念一样。不过dp已经取代了dip。在Android中用来表示非文字大小的尺寸。例如:外边距、内填充等。
- px = dp * (dpi / 160)
- 3.7寸屏幕,分辨率320*480手机上,正好1px = 1dp。
- sp scale independent pixel ,即与缩放比例无关的像素。在android中常用来表示文字大小。
- px 表示像素。因为同样是200px,但是在不同手机下显示的大小是不同的。
- pt point磅。1磅=1/74英寸
- xlarge 屏幕至少:960dp x 720dp
- large 屏幕至少 :640dp x 480dp
- normal 屏幕至少 :480dp x 320dp
- small 屏幕至少 :426dp x 320dp
- 总之:dp是用来定义非文字的尺寸,sp用来定义文字大小。px只用于产生一条一像素的分割线时使用。