一、显式跳转:Intent内部直接声明要启动的Activity所对应的class
1.新建一个SecondActivity并在AndroidManifest中注册
public class SecondActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
}
}
2.设置监听逻辑
为button配置监听逻辑有四种方法,这里采用最简单的一种作为示例其他几种方法的链接
在xml的button控件中添加onClick=“方法名”
<Button
android:id="@+id/jumpBackButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="Jump"
android:text="跳转回MainActivity"/>
然后在Activity中书写方法:public void 方法名(View view){……},无需实现监听器接口就可以调用该方法去响应。
3.在监听逻辑中添加intent
public void Jump(View view){
Intent intent = new Intent(SecondActivity.this,MainActivity.class);
startActivity(intent);
}
二、隐式跳转:进行action,category,data的全部或部分匹配
1.在AndroidManifest.xml文件里配置Activity的属性
<activity android:name=".MainActivity">
<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.gallery.SecondActivity"/>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
MainActivity的属性比较特殊,因为是打开程序后启动的第一个activity。
2.在监听逻辑中添加intent
public void Jump(View view){
Intent intent = new Intent("com.example.gallery.SecondActivity");
startActivity(intent);
}
这里的"com.example.gallery.SecondActivity"是action的name,对应跳转的activity属性里action的name。
博客介绍了Android中Activity的两种跳转方式。显式跳转需在Intent内部声明要启动的Activity对应的class,包括新建Activity并注册、设置监听逻辑、添加intent等步骤;隐式跳转则是进行action、category、data的全部或部分匹配,涉及配置Activity属性和添加intent。
651

被折叠的 条评论
为什么被折叠?



