android的界面切换问题
发布网友
发布时间:2023-07-16 18:43
我来回答
共4个回答
热心网友
时间:2024-11-13 13:42
您好,一般游戏都是用引擎做的,引擎一般都不会跳转Activity的,而是在同个Activity内进行情况切换,主要是因为不同Activity的加载比较浪费时间,因为游戏要加载的东西都比较多嘛。不过如果不是游戏,只是应用的话就不会用到引擎啦,直接Activity切换就行。也有些游戏开发者比较懒,开头动画什么的用另一个Activity来做,然后切换Activity,但是用了就会明显感觉到有些卡顿的。
热心网友
时间:2024-11-13 13:43
1.无参数Activity跳转
Intent it = new Intent(Activity.Main.this, Activity2.class);
startActivity(it);
2.向下一个Activity传递数据(使用Bundle和Intent.putExtras)
Intent it = new Intent(Activity.Main.this, Activity2.class);
Bundle bundle=new Bundle();
bundle.putString("name", "This is from MainActivity!");
it.putExtras(bundle); // it.putExtra(“test”, "shuju”);
startActivity(it); // startActivityForResult(it,REQUEST_CODE);
对于数据的获取可以采用:
Bundle bundle=getIntent().getExtras();
String name=bundle.getString("name");
3.向上一个Activity返回结果(使用setResult,针对startActivityForResult(it,REQUEST_CODE)启动的Activity)
Intent intent=getIntent();
Bundle bundle2=new Bundle();
bundle2.putString("name", "This is from ShowMsg!");
intent.putExtras(bundle2);
setResult(RESULT_OK, intent);
4.回调上一个Activity的结果处理函数(onActivityResult)
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==REQUEST_CODE){
if(resultCode==RESULT_CANCELED)
setTitle("cancle");
else if (resultCode==RESULT_OK) {
String temp=null;
Bundle bundle=data.getExtras();
if(bundle!=null) temp=bundle.getString("name");
setTitle(temp);
}
}
}
热心网友
时间:2024-11-13 13:43
1.你要的那种效果,一般是通过html5技术在webView里加载控件,界面始终在同一个activity中! 2.如果你想通过intent跳转到第二个的activity ,你可以在第二个acticity中加入同样的tab,这样可以正常的返回。3.如果你不想这样做的话,在点击tab2是,你可以通过localActivityManager 得到第二个activity的view ,并把tab2的内容设为这个view!
热心网友
时间:2024-11-13 13:44
android的界面切换 用意图(Intent)实现Activity界面的跳转 也可以把最前面的界面finish()掉