6 图形用户界面 (GUI)
当Android被发明时,它的设计师面临许多选择,其结果将决定他们的项目的成功或失败。一旦他们拒绝了所有其他智能手机操作系统,包括关闭和开源,并决定在Linux内核上构建自己的操作系统,他们面临着一些空白的画布。一个重要的选择是使用哪种编程语言;他们明智地选择了Java。但是一旦做出了选择,就可以选择部署用户界面技术:Java ME,Swing,SWT或上述任何一种。
JavaME是Java Micro Edition,Sun / Oracle的官方标准API,用于手机和其他小型设备。 Java ME曾经是一个相当大的成功案例:数以千万计的手机里面有一个Java Micro Edition运行时。自2000年左右以来,每个黑莓手机,以及世界上所有的BlackBerry智能手机应用程序(包括但不包括BlackBerry OS 10)都基于Java ME。但是Java ME GUI被Android团队视为太限制了,因为它被设计用于手机具有非常小的屏幕和有限功能的日子。
Swing是Java标准版(Desktop Java,Java SE,a.k.a. JDK或JRE)GUI。它基于Java的早期小部件工具包(AWT)。它可以使一些美丽的GUI音乐在右手,但是太大,使用太多的开销Android。
SWT是开发用于Eclipse IDE本身和Eclipse富客户端中的GUI层。它是一个抽象层,并且取决于底层操作系统特定的工具包(例如,Microsoft领域中的Win32,Unix / Linux下的GTK等)。
最后的选择,和最终选择的,是单独去。 Android设计师因此构建了专为智能手机设计的GUI工具包。但他们从其他工具包中获得了许多好的想法,并从一路走来的错误中学到了。
要学习任何新的GUI框架,必然,很多工作。使您的应用在该UI的应用程序社区中运行更加出色。认识到这一点,Google已经设置了Android设计网站。另一套可以帮助的指南是Android模式网站,它不是关于编码,而是显示设计师如何Android视觉体验应该工作。插图,群众来源和推荐!
术语警告的一个词:术语“小部件”有两个不同的含义。所有GUI控件,如按钮,标签等都是小部件,并显示在android.widget包中。这个包还包含“布局容器”(ViewGroup子类),它们更像是Swing中的JPanel和LayoutManager的组合。简单的小部件和布局是从View的子类,所以它们通常被称为视图。另一种类型的小部件可以出现在Android主屏幕上;这些现在称为“应用程序小部件”,以区别于它们与基本的,并在自己的包android.appwidget。
这种类型的微件通常用于诸如新闻,天气,朋友/社交流等的状态显示。我们有一个食谱在应用程序小部件(食谱6.32),在本章结尾。虽然我们会尝试正确地使用widget和应用程序窗口部件,但有时需要从上下文中推断出意思是什么意思。
本章介绍Android中的主要GUI元素。以下章节介绍了“设备中出现问题的地方”:菜单,对话框,吐司和通知。
后面的一个处理列表视图的所有重要的主题(ListView和RecyclerView)。

更多相关文章

  1. HTML5能取代Android和iOS应用程序吗?
  2. Android平台上如何让应用程序获得系统权限以及如何使用platform
  3. Android应用程序通用自动脱壳方法研究
  4. android 手机安装应用程序(APK)权限详细对照表
  5. Android静默方式实现批量安装卸载应用程序
  6. Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析
  7. 如何在开发时可以让Android应用程序支持安装到SD卡

随机推荐

  1. linux驱动之分离分层的概念
  2. 在两台Linux机器之间配置一条SLIP链路,以
  3. linux下mysql表名大小写敏感问题
  4. (转载)浏览器兼容性问题大汇总
  5. Linux协议栈(3)——接收流程及函数
  6. 最近要学习dfb积累资料
  7. Linux 高可用(HA)集群之keepalived+lvs
  8. 如何查看linux命令源代码和函数源代码
  9. 6、linux网络编程--UDP协议编程
  10. 使用 logrotate 进行 nginx 日志分割