Android允许后台活动管理,安卓基础知识(活动)

一、四大组件

Android系统四大组件分别是活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)和内容提供器(Content Provider)。其中活动是所有Android应用程序的门面,凡是在应用中你看到的东西,都是放到活动中的。而服务就低调了,你无法看到它,但它会一直在后台默默的运行,即使用户退出了应用,服务仍然是可以继续运行的。广播接收器允许你的应用接收来自各处的广播消息,比如电话、短信等,当然你的应用同样也可以向外发出广播消息。内容提供器则为应用程序之间共享数据提供了可能,比如你想要读取系统电话簿中的联系人,就需要通过内容提供器来实现。

1 活动

1.1 活动是什么

活动(Activity)是最容易吸引用户的地方,它是一种可以包含用户界面的组件,主要用于和用户进行交互 。如果你曾经用 C,C++ 或者 Java 语言编程,你应该知道这些程序从 main() 函数开始。很类似的,Android 系统初始化它的程序是通过活动中的 onCreate() 回调的调用开始的。

1.2 活动的基本用法

1.2.1 在AndroidManifest文件中注册

所有的活动都需要在AndroidManifest.xml中进行注册,活动的注册生命要放在标签内,此外还需要配置主活动,就是在标签的内部加入标签,并在标签里添加和。另外,如果你的应用程序没有声明任何一个活动作为主活动,这个程序仍然是可以正常安装的,只是你无法在启动器中看到或者打开这个程序。这种程序一般都是作为第三方服务供其他应用在内部进行调用的,如支付宝快捷服务。

android:allowBackup="true"

android:icon="@mipmap/ic_launcher"

android:label="@string/app_name"

android:supportsRtl="true"

android:theme="@style/AppTheme">

android:name=".FirstActivity"

android:launchMode="singleInstance"

android:label="This is FirstActivity">

1.2.1 在活动中使用Toast

Toast是Android系统提供的一种非常好的提醒方式,在程序中可以使用它将一些短小的信息通知给用户。

点击按钮button1弹出一个Toast。通过静态方法makeText()创建出一个Toast对象,然后调用show()将Toast显示出来。makeText()方法需要传入3个参数。第一个参数是Context,也就是Toast要求的上下文,由于活动本身就是一个Context对象,因此这里直接传入FirstActivity.this。第二个参数是Toast显示的文本内容,第三个参数是显示的时长。

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.first_layout);

Button button1 = (Button) findViewById(R.id.button_1);

button1.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View c) {

Toast.makeText(FirstActivity.this, "You clicked Button 1", Toast.LENGTH_SHORT).show();

}

});

}

1.2.1 在活动中使用Menu

手机和电脑不同,手机的屏幕空间有限,因此充分地利用屏幕空间在手机界面中就显得非常重要了。Android给我们停供了一种方式,可以让菜单都能得到展示的同时,还不占用任何屏幕空间。

首先在res目录下新建menu文件夹,然后再menu文件夹下面新建menu.xml文件,在里面加如下代码:

android:id="@+id/add_item"

android:title="Add">

android:title="Removie">

这里我们添加了两个菜单选项,接着回到活动中,重写onCreateOptionsMenu()方法。通过getMenuInflater()方法能够得到MenuInflater对象,再调用它的inflate()方法就可以给当前活动创建菜单了。

public boolean onCreateOptionsMenu(Menu menu) {

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

1.3 使用Intent再活动之间穿梭

Intent是Adnroid程序中各组件之间交互的一种重要方式,它不仅可以指明当前组件想要执行的动作,还可以在不同组件之间传递数据。Intent一般可被用于 启动活动、启动服务以及发送广播场景等。我们首先构建出一个Intent ,传入(FirstActivity.this作为上下文,传入SecendActivity.class作为目标活动,即在FirstActivity这个活动的基础上打开SecendActivity这个活动。然后通过startActivity()方法来执行这个Intent 。

1.3.1 使用显示Intent

button1.setOnClickListener(new View.OnClickListener(

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值