`
xiaolanglang123
  • 浏览: 24564 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
文章分类
社区版块
存档分类

Android界面开发的基础

阅读更多

一、   界面元素

  1. 窗口:Activity

  应用程序中每个屏幕显示都通过继承和扩展基类Activity实现
  分类:基本Activity,带内容的Activity(如ListActivity)

  2. 对话框:Dialog

  一种显示于Activity之上的界面元素,由Activity管理,用于显示一些临时信息和功能,它比Activity开销小

  1) 常用对话框:

  AlertDialog:信息对话框
  DatePickerDialog,TimePickerDialog:时间日期选择对话框
  ProgressDialog:进度对话框
  还可以设置对话框内容为我们自定义的View

  2) 相关函数:

  onCreateDialog():创建对话框的实现
  showDialog():需要显示的时候调用
  onPrepareDialog():更改已有对话框时调用

  3. 菜单:Menu

  一种显示于Activity之上的界面元素,由Activity管理,用于提供用户一些额外的选项和设置

  1) 常用菜单:

  Options Menu:按Menu键时从屏幕底部滑出的菜单
  Context Menu:用户通过在按件上长按调出它
  Submenu:用于给菜单分类,可被添加到其它菜单上,不能添加到子菜单上

  2) 相关函数:

  onCreateOptionMenu():创建菜单 (onCreateContextMenu…)
  onOptionsItemSelected():处理菜单项的单击事件
  onPrepareOptionsMenu():动态更新

  4. 可视化控件:View

  View是可视化控件的基类

  1) 常用控件:

  TextView, ImageView
  Button, CheckBox, RadioButton, ImageButton, ToggleButton
  AnalogClock, DigitalClock
  EditText, List…

  2) 数据绑定:adapter

  adapter将控件(如List, GridView)和复杂数据(如数据,键表)绑定起来
  5. 其它界面元素
  标题栏

  二、 布局的实现

  设置控件在屏幕上如何排布

  1. LinearLayout:线性的布局方式

  最常用,上下或左右的添加控件

  2. GridView:网格布局

  控件按照顺序依次填到每个格子里就好了,使界面很整齐

  3. TableLayout:表格布局以行列形式管理子控件,每行为一个TableRow,TableRow可添加子控件

  4. AbsoluteLayout:绝对坐标布局

  可以让子元素指定准确的x/y坐标值,并显示在屏幕上。(0, 0)为左上角。
  AbsoluteLayout没有页边框,允许元素之间互相重叠(尽管不推荐)。
  不推荐使用,因为其在不同的设备上可能不能很好地工作。

  5. RelativeLayout:相对坐标布局

  控件可指定他们相对于其它元素或父元素的位置(通过ID指定)。
  可以以右对齐,或上下,或置于屏幕中央的形式来排列两个元素。

  6. FrameLayout:单帧布局

  所有的子元素将会固定在屏幕的左上角,后一个子元素将会直接在前一个子元素之上进行覆盖填充

  三、 事件响应

  1. 用注册回调函数的方式响应事件

  2. 如果没被任何一个View处理,则由Activity处理

  3. 常用事件处理

  1) onKeyDown()
  2) onKeyUp()
  3) onTrackballEvent()
  4) onTouchEvent()

  四、 应用软件代码结构

  1. res:资源

  资源是在代码中使用到的并且在编译时被打包进您的应用程序的附加文件
  在代码中通过R类调用(R类自动生成,形如R.string.title)

  1) layout:存放布局用的xml文件

  a) 布局就像容器,里面可以装下很多控件,每个控件又有布局,字体设定,
  如字体大小在layout的xml里使用:
  Android:textAppearance=”?android:attr/textAppearanceSmall”
  b) 默认的布局文件main.xml

  2) drawable:存放图片图标

  3) values:存放常量的xml文件(如字串)

  2. src:代码

  3. AndroidManifest.xml

  包含应用程序的基本信息,有哪些组件,哪些资源
  1) 应用程序的java包名
  2) 应用程序中所含组件(Activity, Service, BroadcastReceiver, ContentProvider)
  3) 应用程序调用其它程序时的权限
  4) 应用程序被其它程序调用时对其它程序的权限要求
  5) 使用Android API的最低版本
  6) 应用程序依赖的库

  五、 国际化的支持(多语言)

  1. 在系统中如何设置本地语言

  桌面->settings->Local & text->Select locale->Chinese(China)

  2. 在程序中如何加入多语言支持

  res/value中是默认的字体
  把它复制一份成为res/value-zh-rCN文件夹,然后把其中文字改为简体中文

  3. 在不改变系统设置的前提前,测试当前应用对某一语言的支持

  import java.util.Local; // 引入相关类
  import android.util.DisplayMetrics;
  在OnCreate函数中加入以下本地化设置
  Resources res = getResources();
  Configuration conf = res.getConfiguration();
  conf.locale = Locale.SIMPLIFIED_CHINESE; // 设置为简体中文
  DisplayMetrics dm = res.getDisplayMetrics();
  res.updateConfiguration(conf,dm);

  编译后再运行程序时,读取的字串就是res/value-zh-rCN目录中strings.xml里的文字了

  六、 常见问题及解决方法

  1. android.app.Application

  创建一个属于你自己的android.app.Application的子类,然后在manifest中申明一下这个类,这是android就为此建立一个全局可用的实例,你可以在其他任何地方使用Context.getApplicationContext()方法获取这个实例,进而获取其中的状态

  2. 用别人写的java文件改出自己的,R.xx报错

  由于资源找不对,要把它的res文件和AndroidManifest.xml内容也做相应替换,注意xml里边要改成自己的类名
  3. android中可以使用java中的类吗

  一般数据结构使用它,而界面使用android自带的界面元素

  4. layout中的控件与程序中控件的关系
  平等的,layout中的控件用R.id.xxx得到

  5. 布局冲突

  requestWindowFeature与setContentView冲突

  七、 android是重要的包

  android.app :提供高层的程序模型、提供基本的运行环境
  android.content :包含各种的对设备上的数据进行访问和发布的类
  android.database :通过内容提供者浏览和操作数据库
  android.graphics :底层的图形库,包含画布,颜色过滤,点,矩形,可以将他们直接绘制到屏幕上.
  android.location :定位和相关服务的类
  android.media :提供一些类管理多种音频、视频的媒体接口
  android.net :提供帮助网络访问的类,超过通常的java.net.* 接口android.os :提供了系统服务、消息传输、IPC 机制
  android.opengl :提供OpenGL 的工具
  android.provider :提供类访问Android 的内容提供者
  android.telephony :提供与拨打电话相关的API 交互
  android.view :提供基础的用户界面接口框架
  android.util :涉及工具性的方法,例如时间日期的操作
  android.webkit :默认浏览器操作接口
  android.widget :包含各种UI 元素(大部分是可见的)在应用程序的屏幕中使用
 
以上都是些最基础的知识,希望大家能够有志于android的高级技巧探索,提高开发技能.

文章来源于:http://www.alqsoft.com/xinwenzixun/androidkaifa/2014/0610/106.html

分享到:
评论

相关推荐

    Android界面开发基础_视频讲解_深入浅出

    Android界面开发基础,深入浅出界面开发基础视频讲解。内容包括android界面开发学习方法、事件机制和如何自定义开发组件.内容来自网上收集,作者sundy

    android应用开发范例精解

    第2篇为应用开发篇,通过实例介绍了Android UI布局、Android人机界面、手机硬件设备的使用、Android本地存储系统、Android中的数据库、多线程设计、Android传感器、Android游戏开发基础、Android与Internet,以及...

    Android Studio微信界面基础开发

    Android Studio微信界面基础开发 基础页面开发 新建页面并编写 #第一个框架处理,分为top,content,bottom 事件处理函数 MainActivity.java package com.example.wexin; import androidx.appcompat.app....

    android开发揭秘PDF

    4.1 用户界面开发详解 4.1.1 用户界面简介 4.1.2 事件处理 4.2 常用控件应用 4.2.1 文本框(Textiew) 4.2.2 列表(ListView) 4.2.3 提示(T0ast) 4.2.4 编辑框(EditText) 4.2.5 单项选择(RadioGroup、RadioButton 4.2.6...

    Android应用开发揭秘.rar

    第9章 Android特色开发 第三部分 实例篇 第10章 Android应用开发实例 第11章 Android游戏开发实例 第四部分 高级篇 第12章 AndroidOpenGL开发基础 第13章 AndroidOpenGL综合应用 第14章 游戏引擎实现 第15章 优化...

    Android UI界面开发源码2

    讲解了Windows和Linux操作系统下安装开发Android所需的工具集及...其次对Android中的基础UI和高级UI的开发技巧进行了全面、透彻的讲解, 接着对NDK的各个知识点进行了深入的剖析, 并结合源码对其原理进行深入的分析。

    Android UI界面开发源码1

    讲解了Windows和Linux操作系统下安装开发Android所需的工具集及...其次对Android中的基础UI和高级UI的开发技巧进行了全面、透彻的讲解, 接着对NDK的各个知识点进行了深入的剖析, 并结合源码对其原理进行深入的分析。

    android仿QQ界面

    仿手机QQ界面,android基础,含主页、联系人、聊天等界面。适合初学android,用于熟悉android各种基础控件知识。

    Android应用开发案例教程 (毋建军、徐振东、林瀚 编著) pdf

    全书论述了Android开发概述,Android应用程序组成,Android UI(用户界面)基础,Android UI系统控件基础,Android UI系统控件进阶,Android UI菜单、对话框,Android组件广播消息与服务,Android数据存储与访问,...

    android实战 制作QQ登录界面(android studio源程序工程)

    包括Android 移动开发基础案例教程课本中第二章实战演练——制作QQ登录界面的源代码,可用Android studio运行,适合初学者学习。

    Android用户界面设计

    在细致介绍完开发基础之后,以房地产应用为例,演示如何确定产品目标,接着利用现有视图等要素从零开始搭建整个应用,然后使用高级功能进一步优化代码及资源,以达到“精心设计”的目的。另外,本书附录提供了应用...

    Android应用开发,完整扫描版

    书中不仅对Android应用程序的开发环境和调试方法进行了详细介绍,而且对Android软件开发的一些关键技术和API进行了讲解,包括数据库、定位和地图、图形用户界面、进程间通信以及手机通话等相关内容。《Android应用...

    Android UI开发专题

    近期很多网友对Android用户界面的设计表示很感兴趣,对于Android UI开发自绘控件和游戏制作而言掌握好绘图基础是必不可少的。本次专题分10节来讲述,有关OpenGL ES相关的可能将放到以后再透露。本次主要涉及以下四个...

    Android应用开发

    书中不仅对Android应用程序的开发环境和调试方法进行了详细介绍,而且对Android软件开发的一些关键技术和API进行了讲解,包括数据库、定位和地图、图形用户界面、进程间通信以及手机通话等相关内容。《Android应用...

    《Android应用开发揭秘》附带光盘代码.

     4.1 用户界面开发详解  4.1.1 用户界面简介  4.1.2 事件处理  4.2 常用控件应用  4.2.1 文本框(Textiew)  4.2.2 列表(ListView)  4.2.3 提示(T0ast)  4.2.4 编辑框(EditText)  4.2.5 单项选择(RadioGroup...

    Android高级应用开发教学视频-Android高级应用开发.z05

    Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...

    《Android应用开发》开放实验项目总结报告-模板.doc

    此次开放实验的目的是使学生初 " "步了解Android应用开发的基础知识,包括熟悉Android平台的体系结构、Andro" "id开发环境的搭建及设置,主要内容则是Android图形用户界面应用的设计和开" "发。通过Android应用开发...

    Android应用开发案例教程

    全书论述了android开发概述,android应用程序组成,android ui(用户界面)基础,android ui系统控件基础,android ui系统控件进阶,android ui菜单、对话框,android 组件广播消息与服务,android数据存储与访问,...

    深入浅出Android软件开发教程.pdf+源码

    介绍设计开发Android应用程序的基础理论和实践方法,讲解Android系统的体系结构、Java语言与面向对象编程基础、XML基础、开发环境搭建、Android应用程序的调试和发布方法、用户界面设计、组件间的通信与广播、后台...

    Android开发:实现qq登录界面(界面实现)

    该项目用来练习Android布局和点击事件,适用初学者练手。无其他复杂功能,项目直接解压后导入即可运行。

Global site tag (gtag.js) - Google Analytics