zoukankan      html  css  js  c++  java
  • Android中 intent 显式启动与隐式启动

    显式启动代码
    FirstActivity.java
    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 v) {
                //Toast.makeText(FirstActivity.this,"哈哈",Toast.LENGTH_SHORT).show();
                Intent intent = new Intent(FirstActivity.this,SecondActivity.class);
                startActivity(intent);
            }
        });
    
    }
    隐式启动代码
    清单文件
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".FirstActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
    
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".SecondActivity">
            <intent-filter>
                <action android:name="com.example.deligence.ACTION_START"/>
                <category android:name="android.intent.category.DEFAULT"/>
            </intent-filter>
        </activity>
    </application>
    <action> 标签中我们指明了当前活动可以响应com.example.deligence.ACTION_START
    而<category>标签包含了一些附加信息,更精确地表明了当前活动能够响应的Intent中还可能带有的category.只有<action>和<category>中的内容
    能同时匹配上intent指定的action和category时,这个活动才能响应改intent

    FirstActivity.java
    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 v) {
                Intent intent = new Intent("com.example.deligence.ACTION_START");
                startActivity(intent);
            }
        });
    
    }
    android.intent.category.DEFAUL 是一种默认的category,再调用startActivity()方法的时候会自动将这个category添加到intent中



  • 相关阅读:
    rMATs分析single-end 数据,结果文件为空?
    Error in inherits(x, "theme") : argument "e2" is missing, with no default
    R 变量名开头不能为数字
    linux 下的通配符和正则表达式不一样
    samtools的一些问题
    Error in C(1, 2) : object not interpretable as a factor
    grep -w 正确使用,结果却不正确的原因之一
    慎用rm命令和*
    定义默认字典值为列表类型
    C语言考题:Find the key in the picture,good luck..
  • 原文地址:https://www.cnblogs.com/CCCrunner/p/11782052.html
Copyright © 2011-2022 走看看