Android基础知识03—Activity的基本用法

时间:2023-03-09 19:28:08
Android基础知识03—Activity的基本用法

------Activity 活动------

活动 Activity 是一种包含用户界面的组件,即一个界面就是一个活动

创建活动的过程:

>> 创建一个类,继承自Activity类,并且重写onCreate等方法   >> 创建一个Android布局文件(XML)格式   >> 在新建的活动类中获取布局实例或者相应的组件

>> 根据具体情况编写事件监听器

>> 在AndroidManifest.xml中注册活动类

注册格式:

<activity         android:name=".FirstActivity"  android:label="This is FirstActivity" >  <intent-filter>  <action android:name="android.intent.action.MAIN" />  <category android:name="android.intent.category.LAUNCHER" />  </intent-filter>      </activity>

.FirstActivity  代表新建的活动的完整类名,包括包名     action标签指定活动的加载方式,这里表示程序一开运行时加载的活动     category标签待查

隐藏标题栏的方法:

requestWindowFeature(Window.FEATURE_NO_TITLE),这代码必须在setContentView()方法之前执行

在活动中使用Toast:

一个很好的提醒类,调用方法:Toast.makeText(Context类, 要显示的文本, 显示的时间);

销毁活动:

按下Back键或者直接执行finish()方法

使用Intent进行活动与活动之间的交互:

>> 显式Intent

先创建一个Intent实例,再调用startActivity(Intent实例)方法

   Intent intent = new Intent(FirstActivity.this(当前活动), SecondActivity.class(目标活动));

  startActivity(intent);

>> 隐式Intent

在注册类时同时附加<intent-filter>过滤信息action和category,只有活动能完全匹配action和actegory这些信息的时候,活动才会响应。

   Intent intent = new Intent("com.example.activitytest.ACTION_START"(一些过滤信息字符串));

   intent.addCategory("com.example.activitytest.MY_CATEGORY"(如果为默认的可以不写));

   startActivity(intent);

使用隐式的intent可以用于启动其他程序的活动:

>> 比如在其他程序中调用浏览器,代码如下:

  Intent intent = new Intent(Intent.ACTION_VIEW);

  intent.setData(Uri.parse("http://www.baidu.com")); //将字符串解析成URI对象

   startActivity(intent);        Intent.ACTION_VIEW是Andriod系统提供的的动作

>> <intent-filter>标签还可以配置<data>标签,用于更精确的指定活动响应哪些类型数据。

1. android:scheme  用于指定数据的协议部分,如http、tel等。

2. android:host  用于指定数据的主机名部分,如www.baidu.com 部分。

3. android:port  用于指定数据的端口部分,一般紧随在主机名之后。

4. android:path  用于指定主机名和端口之后的部分,如一段网址中跟在域名之后的内容。

5. android:mimeType  用于指定可以处理的数据类型,允许使用通配符的方式进行指定。