读书人

Android不同activity之间的跳转有关问

发布时间: 2012-02-15 12:09:44 作者: rapoo

Android不同activity之间的跳转问题
我是Android新手,现在做了几个页面,想通过button实现不同页面间的跳转button01进入reg.java页面点击返回按钮后回到myblog页面后点击button02没了反应,不知道代码哪里出了问题。把代码贴上来大家帮忙看看吧,谢谢了。
myblog.java
package oms.sample.blog;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.widget.Button;
import android.os.Bundle;

public class myblog extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mainMethod();
}
private void mainMethod() {
setContentView(R.layout.main);
Button btn1=(Button)findViewById(R.id.Button01);//控件与代码绑定
Button btn2=(Button)findViewById(R.id.Button02);//控件与代码绑定

btn1.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v)
{
method1();
}

});
btn2.setOnClickListener(new Button.OnClickListener()
{
public void onClick(View v){
method2();
}
});
}

private void method1() {
setContentView(R.layout.regpage);
Intent intent = new Intent();
intent.setClass(myblog.this, reg.class);
startActivity(intent);
Button btn1=(Button)findViewById(R.id.regButton01);
btn1.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v) {
mainMethod();
}
}
);
}
private void method2() {
setContentView(R.layout.homepage);
Intent intent = new Intent();
intent.setClass(myblog.this, hom.class);
startActivity(intent);
Button btn1=(Button)findViewById(R.id.toland);
btn1.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v) {
mainMethod();
}
}
);
}
}

下面是Androidmanifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="oms.sample.blog"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".myblog"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />


</intent-filter>
</activity>
<activity android:name=".reg"
android:label="@string/app_name">
</activity>
<activity android:name=".hom"
android:label="@string/app_name">
</activity>
<activity android:name=".logpage"
android:label="@string/app_name">
</activity>
</application>
<uses-sdk android:minSdkVersion="3" />
</manifest>


不知道哪里有问题了,刚学这个问题真的太多了!!
还有一个问题是,返回到myblog.java界面后再次进入reg.java后点击返回按钮,又不起作用了,这是怎么回事啊?

[解决办法]
要想在不同的Activity之间中转,必须在AndroidManifest.xml里面给每个Activity进行设置:
.....
<activity android:name=".myblog"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".reg"
android:label="@string/app_name">
<intent-filter>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".hom"
android:label="@string/app_name">
<intent-filter>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".logpage"
android:label="@string/app_name">
<intent-filter>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
[解决办法]
startActivity(intent);
Button btn1=(Button)findViewById(R.id.toland);
btn1.setOnClickListener(new Button.OnClickListener(){})

startActivity(intent)之后的语句执行不到
[解决办法]
为什么不把button全部取出来添加事件呢
[解决办法]
private void method1() {
Intent intent = new Intent();
intent.setClass(myblog.this, reg.class);
startActivity(intent);
}就可以了


setContentView(R.layout.regpage); 这句话放到reg.class里面

读书人网 >Android

热点推荐