Android开发入门2:概念建立

android 54chen dev

上一记传送门:android开发入门 在第一记中,我(54chen)完成了一个完整的android开发环境,并且简单开发了一个Hello world android程序,在有了一个大概的开发过程的感觉之后,再进一步来学习android开发过程中需要接触到的常识。

android开发表皮几大块 1)extends Activity的Activity类很是奇异,其实这很像是mvc框架中的controller,继承Activity实现的类,它控制了所有的业务逻辑。
2)打开项目的文件夹,你会发现有许多的xml,其中,比较关键的一个是main.xml(layout目录下),它相当于mvc框架中的view,负责了软件界面哪个位置摆放一个什么样的控件,当然了,这些控件都是系统本身的,你可以想像成是html标签里的那些控件一样。
3)values目录下有settings.xml,是定义了一些字符串、颜色、数组等常量数据,有点像普通java项目里的属性文件(properties文件)

走进android项目中的layout/main.xml 开发android项目和开发web项目有几分神似,在main.xml里(也可能是xx.xml哦,main.xml是默认的第一个,在java代码里,会用R.layout.main来表示man.xml),包括了各种各样的基础控件(它们都是大小写敏感的,如果在xml里写错了,那一定会在运行过程中出现空指针错误),就像是web项目的前端一样,不过其复杂程度自然要比写html复杂。可能大部分入门android的时间都会花在这里。

<TextView
android:layout_height=”wrap_content”
android:layout_width=”fill_parent”
android:id=”@+id/TextView01″
android:text=”54chen Android2.2 学习手记”
android:textColor=”#0f0″
android:textSize=”28dip”
android:layout_y=”330dip”
android:layout_x=”35dip“>
</TextView>

这就是main.xml里的一个片段,这是一个TextView控件(请勿直接复制,看看即可,有半角全角的问题会出现错误),这个控件,关键词是TextView,大小写是敏感的,另外它丰富的属性都是由android:xx来定义的,其他的控件也是类似的定义。一般都会有,高度、宽度、内容、id、颜色、字体大小、布局相关的信息。

例子到此,详细的更多控件的使用,我们在学习完intent之后再在后面的手记中去记录。

Intent:android项目中的胶水 前面说到,相当于controller层的activity,实际上一般情况是一个activity对应一个layout的xml,而一个常见的软件,都会弹出来多个窗体(做过vb vc delphi啥的一定知道subform的概念),这个时候需要多个 activity来回切换,这时候就是靠intent在中间起作用。
在一个Android应用中,Intent是对执行某个操作的一个抽象描述,Intent 负责提供组件之间相互调用的相关信息传递,实现调用者和被调用者之间的解耦。Intent是一种在不同组件之间传递的请求信息,是应用程序发出的请求和意图,作为一个完整的消息传递机制,Intent不仅需要发送端,还需要接收端。

在android应用总控xml(AndroidManifest.xml)里有这样的内容:<intent-filter> ,这里面定义了可以访问的intent动作。

// 获得可编辑文本框中的值,也就是电话号码
String phoneNumber = PhoneNumberEditText.getText().toString();
// new Intent(行为,数据),其中action_dial是拨号行为,数据是电话号码
Intent intent = new Intent(Intent.ACTION_DIAL, Uri
.parse("tel://" + phoneNumber));
// 去调用那些可以处理拨号行为的Activity
startActivity(intent);

看完上述代码,是不是有点对intent概念的感觉了呢,如果还有疑惑,再看

//在当前Activity中启动另外一个Activity
startActivity(new Intent(this,目标Activity.class));


原创文章如转载,请注明:转载自五四陈科学院[http://www.54chen.com]

捐款订阅54chen
捐赠说明

Comments