IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

android开发入门2:概念建立

五四陈科学院-坚信科学,分享技术 2010-11-15 22:33:21 累计浏览 3,426 次
本机暂存

   上一记传送门: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的时间都会花在这里。

   

   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“>

   

   这就是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动作。

    // 获得可编辑文本框中的值,也就是电话号码

    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));

同分类推荐文章

  1. 「置顶」我做了什么 (2026-05-05 12:13:28)
  2. 万字长文推演:手机不再从 App 开始,Agent OS 如何接管任务入口 (2026-04-28 14:57:22)
  3. Android Perfetto 系列 10 - Binder 调度与锁竞争 (2025-11-16 15:33:30)

查看更多 移动开发 文章 →

建议继续学习

  1. 情绪版(Mood board)操作流程的新思考 (累计阅读 41,756)
  2. android 开发入门 (累计阅读 19,530)
  3. 到底什么是MVC? (累计阅读 11,870)
  4. Android 连接SSID隐藏网络以及 LEAP 认证的方法 (累计阅读 9,540)
  5. 让安卓手机通过代理翻墙的方法 (累计阅读 9,117)
  6. 手机产品设计方向 (累计阅读 7,954)
  7. 实时监控Android设备网络封包 (累计阅读 6,558)
  8. Eclipse开发Android应用程序入门:重装上阵 (累计阅读 6,463)
  9. 基于 PhoneGap 与 Java 开发的 Android 应用的性能对比 (累计阅读 6,411)
  10. Android用户界面设计:表格布局 (累计阅读 6,187)