mono for android学习过程系列教程(4)
今天要讲的事情是构建安卓程序的UI界面。
首先给大家上点小点心,如图:
上面就是我们界面的设计模块,仔细看中间大块的下方,有一个Source,这就类似webform里面的设计和源代码界面。
在这个页面看到的都是一些类似xml标记性标签:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent">
- <Button
- android:id="@+id/MyButton"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/Hello" />
- </LinearLayout>
首先,以我们平时开发桌面应用程序来说,首先winform是要将界面设计好。进入主题:
我们一般可以通过左边来拖控件来完成界面的设计。但是我感觉这个没有droiddraw-r1b22这款
界面设计软件方便。
通过拖好控件,可以对UI元素进行一些设置。当拖完控件,点击左上方generate就可以生成右下方的xml代码。
这里需要注意,这里的xml不会自动更新,所以需要点击generate按钮来创建更新的代码。
安卓界面的5种控件布局:
AbsoluteLayout这种布局是将所有的控件放在所定义的位置。根据我查的资料显示,现在并不推荐使用这样的布局。
FrameLayout是显示一个单一项,比如一个图片等等。
LinearLayout沿单一的水平线或者垂直线显示子控件。
RelativeLayout将控件放在相对于其他控件的特定位置。
TableLayout使用行/列式布局来显示控件。
这五种布局,最常用的是FrameLayout和RelativeLayout这两种布局。
还需要注意的事情是FrameLayout这样的布局,会将所有的元素都固定在布局的左上角。
他们都在同一位置绘制,并且显示会相互干扰。
下面介绍一些移动用户界面的指导原则:
表单元素的数目:不同的移动设备显示大小不同,故此不要让用户看到太多的表单元素。
表单元素的尺寸:表达元素能够足够使得用户能够使用。
测试:安卓设备有不同的分辨率,用来不同机型是最重要。这个我最深有体会。在上家离职的公司的安卓软件,
发现很多因为各种不同的机型而产生不一样的结果。
我们下面来介绍三种简单的文本控件:
Textview类似一个标签,可使用该控件向用户显示数据。TextVIew的Width属性用于设置TextView的宽度。
可以使用值fill_parent或者一个整数像素来设置该属性。
EditText类似。net的文本框,它允许多行输入和自动换行。
AutoCompleteTextView是一个向用户显示一组可供选择的项的文本框。类似
搜索引擎,比如在百度上搜索一个种子如图,这个也是类似EditText控件一样。
当用户输入时,可以将选中的项显示在文本视图中,向用户显示的数据列表是由
数据适配器构成的,这里线普及下。这里的数据适配器就类似我们Ado.net的适配器,用来
充当数据绑定的桥梁。在IOS中开发是建一个类继承一个Source的接口来实现绑定的。
在后续课程中将继续深入讲解适配器。
今天的课程就讲解这几个基本控件的使用。下一讲继续讲解其他控件的使用。
转载请附带联系人Q-高卿 QQ1466358067
mono for android学习过程系列教程(4)的更多相关文章
- mono for android学习过程系列教程(1)
直接进入主题,关于mono for android的学习,首先配置好环境,如何配置环境,度娘谷歌一大堆,记得使用破解版. 我自己是百度“黑马四期”传智播客的视频,里面有破解版开发环境的软件. 今天直接 ...
- mono for android学习过程系列教程(2)
接着上一讲继续开始写,今天介绍的是安卓的基本组成结构. 在大多数情况下,MONO FOR ANDROID的命名空间和Android的命名空间 是互相映射的.有时候需要大小写,非字母数字字符的用法以及名 ...
- mono for android学习过程系列教程(7)
首先说个抱歉,这段时候由于个人原因未及时更新博客.故此今天先给大家来个小料. 以后会及时更新我自己的学习过程. 不多说,终于私人生活安定下来了,可以安心学习.直接进入主体: 今天咱们摒弃所有的前面的知 ...
- mono for android学习过程系列教程(3)
服务 接着上一讲的内容,咱们继续来唠叨概念性的东西.服务,内容提供器,广播接收器等理论知识. 首先是服务,它不是一个可视化的组件或者视图.他是由我们开发人员来定义,可以一直一直运行 的工作单元.跟活动 ...
- mono for android学习过程系列教程(5)
这一讲主要需要了解的安卓UI元素是Spinner.这个元素类似我们 winform和webform里面的下拉选项. 首先我们先建立一个新的项目,命名为SpinnerExample. 然后在Layout ...
- mono for android学习过程系列教程(6)
接着上一讲,今天讲的是Button,CheckBox这二个安卓元素, 我们来看第一个Button这个控件,类似winform和webform里面一样,它也是 存在有触发事件的,我们新建初始化项目直接就 ...
- [转]Android Studio系列教程六--Gradle多渠道打包
转自:http://www.stormzhang.com/devtools/2015/01/15/android-studio-tutorial6/ Android Studio系列教程六--Grad ...
- 【Android进阶系列教程】前言
起因 因为初学Android的时候还没有写博客的意识,现在Android的门是入了,正在进阶的道路上行走,但是就这一路也走了不少的弯路.我想,总得来说Android入门还是比较容易的,网络资源比较丰富 ...
- Android Studio系列教程六--Gradle多渠道打包
Android Studio系列教程六--Gradle多渠道打包 2015 年 01 月 15 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://stormzh ...
随机推荐
- Angular杂谈系列1-如何在Angular2中使用jQuery及其插件
jQuery,让我们对dom的操作更加便捷.由于其易用性和可扩展性,jQuer也迅速风靡全球,各种插件也是目不暇接. 我相信很多人并不能直接远离jQuery去做前端,因为它太好用了,我们以前做的东西大 ...
- Unity3d学习 制作地形
这周学习了如何在unity中制作地形,就是在一个Terrain的对象上盖几座小山,在山底种几棵树,那就讲一下如何完成上述内容. 1.在新键得项目的游戏的Hierarchy目录中新键一个Terrain对 ...
- gentoo 安装
加载完光驱后 1进行ping命令查看网络是否通畅 2设置硬盘的标识为GPT(主要用于64位且启动模式为UEFI,还有一个是MBR,主要用于32位且启动模式为bois) parted -a optima ...
- 通俗易懂的来讲讲DOM
DOM是所有前端开发每天打交道的东西,但是随着jQuery等库的出现,大大简化了DOM操作,导致大家慢慢的“遗忘”了它的本来面貌.不过,要想深入学习前端知识,对DOM的了解是不可或缺的,所以本文力图系 ...
- ExtJS 4.2 Grid组件的单元格合并
ExtJS 4.2 Grid组件本身并没有提供单元格合并功能,需要自己实现这个功能. 目录 1. 原理 2. 多列合并 3. 代码与在线演示 1. 原理 1.1 HTML代码分析 首先创建一个Grid ...
- EntityFramework.Extended 支持 MySql
EntityFramework.Extended 默认不支持 MySql,需要配置如下代码: [DbConfigurationType(typeof(DbContextConfiguration))] ...
- 当web.config文件放置在共享目录下(UNC),启动IIS会提示有错误信息500.19,伴随有错误代码0x80070003和错误代码0x80070005的解决办法
最近遇到一个很有意思的使用环境,操作人员将所有的网站应用内容投放到共享存储里面,并且使用微软的SMB协议将其以CIFS的方式共享出来,使用Windows Server 2008 R2的IIS将其连接起 ...
- 【用户交互】APP没有退出前台但改变系统属性如何实时更新UI?监听系统广播,让用户交互更舒心~
前日,一小伙伴问我一个问题,说它解决了半天都没解决这个问题,截图如下: 大概楼主理解如下: 如果在应用中有一个判断wifi的开关和一个当前音量大小的seekbar以及一个获取当前电量多少的按钮,想知道 ...
- Mybatis XML配置
Mybatis常用带有禁用缓存的XML配置 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE ...
- PHP设计模式(一)简单工厂模式 (Simple Factory For PHP)
最近天气变化无常,身为程序猿的寡人!~终究难耐天气的挑战,病倒了,果然,程序猿还需多保养自己的身体,有句话这么说:一生只有两件事能报复你:不够努力的辜负和过度消耗身体的后患.话不多说,开始吧. 一.什 ...