展会信息港展会大全

从头学Android之机器人的意图之Intent的Action
来源:互联网   发布日期:2016-01-14 09:44:39   浏览:1685次  

导读:Intetn的Action属性:什么是Action?Action是指Intent是指一个要完成的动作,是一个字符串常量。在Intent类里面定义了大师的Action的常...

Intetn的Action属性:

什么是Action?

Action是指Intent是指一个要完成的动作,是一个字符串常量。在Intent类里面定义了大师的Action的常量属性,例如:ACTION_CALL (打电话)ACTION_EDIT(编辑数据)等等,除此之外,我们可以使用setAction()函数来设置IntnetAction属性,使用getAction()来获得Action

1、自定义Action:

再看Intent构造函数:

public Intent ()

默认的构造函数

public Intent (Intent o)

通过一个创建好的Intent复制过来

public Intent (String action)

通过指定的动作创建Intent,至于一些常见的动作将在后面指出

public Intent (String action,Uri uri)

通过指定的action和uri创建一个Intent

public Intent (Context packageContext,Class<?> cls)

参数说明:

packageContext:应用程序上下文

cls:接收Intent的目标组件

public Intent (String action,Uri uri,Context packageContext, Class<?> cls)

参数说明:

action:指定的action 例如:ACTION_VIEW

packageContext:应用程序上下文

cls:接收Intent的目标组件

uri:指定的uri

启动Activity

1、显示启动:必须指明启动的Activity所在的类

// 创建一个Intent应用程序上下文目标组件

print?

Intent intent = new Intent(IntentDemo01Activity.this,

ActivityToStart.class);

//显示启动Activity

startActivity(intent);

示例代码:

print?

package com.jiahui.activity;

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class IntentDemo01Activity extends Activity {

private Button myBtn;

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

myBtn = (Button) findViewById(R.id.myBtn);

myBtn.setText("启动ActivtiToStart");

myBtn.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

// 创建一个Intent应用程序上下文目标组件

Intent intent = new Intent(IntentDemo01Activity.this,ActivityToStart.class);

//显示启动Activity

startActivity(intent);

}

});

}

}

print?

package com.jiahui.activity;

import android.app.Activity;

import android.os.Bundle;

import android.widget.TextView;

public class ActivityToStart extends Activity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.start);

TextView myText=(TextView)findViewById(R.id.startTxt);

myText.setText("启动的Activity");

}

}

2、隐式启动:由Android系统根据Intent的动作和数据来决定启动哪一个Activity,只包含需要执行的动作和所包含的数据,无需指明具体哪一个Activity

print?

package com.jiahui.activity;

import android.app.Activity;

import android.content.Intent;

import android.net.Uri;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class IntentDemo02Activity extends Activity {

private Button myBtn;

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

myBtn = (Button) findViewById(R.id.myBtn);

myBtn.setText("隐式");

myBtn.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

// 浏览

// Intent intent = new Intent(Intent.ACTION_VIEW, Uri

// .parse("http://www.goole.com.cn"));

//

// 显示拨号盘

Intent intent = new Intent(Intent.ACTION_DIAL);

startActivity(intent);

}

});

}

}

综合实例1:

print?

package com.jiahui.activity;

import android.app.Activity;

import android.content.Intent;

import android.net.Uri;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.EditText;

public class IntentWebViewDemoActivity extends Activity {

private Button myBtn;

private EditText myText;

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

myBtn = (Button) findViewById(R.id.myBtn);

myText = (EditText) findViewById(R.id.edtxt01);

myBtn.setText("浏览");

myBtn.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

String uriString = myText.getText().toString();

Intent intent = new Intent(Intent.ACTION_VIEW, Uri

.parse(uriString));

startActivity(intent);

}

});

}

}

如需转载引用请注明出处:http://blog.csdn.net/jiahui524

赞助本站

人工智能实验室

相关热词: android开发 教程

AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港