IT职业教育

华中地区北大青鸟校区IT集训营

027-87807717

北大青鸟首页 > 热门IT技术教程 > 安卓技术教程 > > 安卓开发教程之安卓界面相关知识

安卓开发教程之安卓界面相关知识

时间:2015-10-17 09:26 来源:北大青鸟武汉宏鹏鲁广校区
导读:安卓开发教程之安卓界面相关知识的分享能帮助安卓移动开发爱好者了解更多安卓开发的知识。

    安卓开发教程之安卓界面相关知识的分享能帮助安卓移动开发爱好者了解更多安卓开发的知识。北大青鸟武汉宏鹏鲁广校区作为湖北省安卓工程师培训基地,将对于安卓开发教程进行详细的分享。

  一、 界面元素

  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 元素(大部分是可见的)在应用程序的屏幕中使用

  安卓开发教程的分享将安卓开发的知识进行细化,让喜欢移动开发的人更加爱上安卓系统。北大青鸟武汉宏鹏鲁广校区安卓课程就是从课程学习到项目实践进行广泛的学习,旨在帮助安卓开发的学生掌握丰富的理论知识和扎实的项目经验。

告诉我们,你现在想了解什么?

精彩专题——96%的同学看到这里都会点击下面的专题

Copyright © 2006-2016 武汉北大青鸟鲁广校区(武汉宏鹏教育咨询有限公司) 版权所有鄂ICP备11006561号 CacheTime:2017-12-11 09:05:53 CacheID:983

鄂公网安备 42011102000412号