android 在activity中使用intent

2025-11-10 11:00:52

1、通过指定Intent组件名称来实现的,一般是在同一个应用程序内部使用的。比如:我知道你的名字叫王XX,我就直接说,王XX过来一下,简单明了。

2、首先,创建一个android项目;

然后,增加一个按钮,这个按钮就是用来启动另一个activity的。

XML布局代码如下:

<Button 

        android:id="@+id/button"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:text="启动另一个activity"

        />

很简单,就是增加一个按钮,这样我们第一个activity就完成了

android 在activity中使用intent

3、然后,创建我们的第二个activity。从零创建一个acitivy需要3个步骤:

1)首先要有一个java文件,是我们的acitivy的代码;

2)要有一个布局文件XML,然后java文件中会引入这个布局,作为我们第二个activity的布局;

3)将这个activity在清单文件中注册。

4、首先是第一步:

创建一个新的java文件。直接右击工程/包(package) -->new->class,

填写包名package,类名activity2,并点击SuperClass后面的browse..,输入Activity,让新建的这个类继承与此。

android 在activity中使用intent

5、加入如下代码,调用父类的onCreate方法。

public class activity2 extends Activity {

@Override

    protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

}

}

android 在activity中使用intent

6、然后是第二步,创建一个XML布局文件。

右键res->layout,选择new->android xml file,名称为layout2

android 在activity中使用intent

7、在这个XML中加入一个button按钮

android 在activity中使用intent

8、创建XML成功后,回到刚才的代码中,引入这个布局

android 在activity中使用intent

9、最后,在清单文件中对这个activity进行注册,加入如下代码:

<activity

            android:name="com.example.test.activity2"

            android:label="@string/app_name" >

        </activity>

到此,第二个activity创建成功

android 在activity中使用intent

10、回到第一个activity,因为在布局中增加了一个按钮,现在我们要使用它。

在mainactivity.java中添加对按钮的使用,

 Button b = (Button) findViewById(R.id.button);

        

        b.setOnClickListener(new OnClickListener(){

        @Override

        public void onClick(View v) {

        Intent intent = new Intent(MainActivity.this, activity2.class);

        startActivity(intent);

        }        

        });

这里,intent就是显示使用,在intent的第一个参数,传入MainActivity.this作为上下文,而第二参数直接指明了我要启动的activity的名字,非常的明确,就是在MainActivity上启动activity2。

android 在activity中使用intent

11、现在把代码运行起来,点击“启动另一个activity”,就可以直接启动第二个activity了

1、隐式intent相比于显式intent要隐晦的多,显式intent就是直接知道你的名字,直接喊你。但是隐式intent就是不知道你的名字,喊的是特性。比如,你在医院,不知道护士叫什么名字,你就可以喊“那个戴眼镜的年轻的护士”,“那个2楼耳鼻喉专家科室里的那个年轻的实习生”,医院再根据当前上下文,就知道你喊的是谁了。隐式intent就是这样子

2、在清单文件中,更改下activity2的相关内容

<activity

            android:name="com.example.test.activity2"

            android:label="@string/app_name" >

            <intent-filter>

        <action android:name="alsp" />

        <category android:name="android.intent.category.DEFAULT" />

        <category android:name="yinshi" />

    </intent-filter>     

        </activity>

其中,

<category android:name="android.intent.category.DEFAULT" />

是必须要加上的,因为启动隐式intent默认的intent就是这个,如果不加上这个,会出错

android 在activity中使用intent

3、更改mainactivity.java中的内容,将显式intent更改为隐式intent。

注意,这里不需要单独去匹配android.intent.category.DEFAULT,因为这个是默认的

android 在activity中使用intent

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢