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 ...
随机推荐
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
- PHP-生成缩略图和添加水印图-学习笔记
1.开始 在网站上传图片过程,经常用到缩略图功能.这里我自己写了一个图片处理的Image类,能生成缩略图,并且可以添加水印图. 2.如何生成缩略图 生成缩略图,关键的是如何计算缩放比率. 这里,我根据 ...
- 理解Maven中的SNAPSHOT版本和正式版本
Maven中建立的依赖管理方式基本已成为Java语言依赖管理的事实标准,Maven的替代者Gradle也基本沿用了Maven的依赖管理机制.在Maven依赖管理中,唯一标识一个依赖项是由该依赖项的三个 ...
- WebAPi之SelfHost自创建证书启动Https疑难解惑及无法正确返回结果
前言 话说又来需求了,之前对于在SelfHost中需要嵌套页面并操作为非正常需求,这回来正常需求了,客户端现在加了https,老大过来说WebAPi访问不了了,这是什么情况,我去试了试,还真是这个情况 ...
- SQL Server-聚焦APPLY运算符(二十七)
前言 其实有些新的特性在SQL Server早就已经出现过,但是若非系统的去学习数据库你会发现在实际项目中别人的SQL其实是比较复杂的,其实利用新的SQL Server语法会更加方便和简洁,从本节开始 ...
- Java中Comparable与Comparator的区别
相同 Comparable和Comparator都是用来实现对象的比较.排序 要想对象比较.排序,都需要实现Comparable或Comparator接口 Comparable和Comparator都 ...
- 使用cmake自动构建工程
公司引擎是用cmake根据目标平台来构建工程的,刚接触的时候深深体会到cmake的方便:如果目标平台是windows,它可以帮你自动构建出vs工程:如果是安卓,自动构建出eclipse工程,如果是IO ...
- gRPC源码分析1-SSL/TLS
引子 前几天看到微信后台团队分享了TLS相关文章,正好gRPC里TLS数据加密是很重要的一块,于是整理出了这篇文章. 在gRPC里,如果仅仅是用来做后端微服务,可以考虑不加密.本文太长,先给个大纲. ...
- Android local.properties 文件读取
转载请标明出处:http://www.cnblogs.com/zhaoyanjun/p/6202369.html 本文出自[赵彦军的博客] 在Android Studio项目里面有个local.pro ...
- 浅谈浏览器http的缓存机制
针对浏览器的http缓存的分析也算是老生常谈了,每隔一段时间就会冒出一篇不错的文章,其原理也是各大公司面试时几乎必考的问题. 之所以还写一篇这样的文章,是因为近期都在搞新技术,想“回归”下基础,也希望 ...