有时候在群里加入的新人总会喜欢问一些过去的问题  有时候不想回答 是因为回答的次数多了

不回答又打击人的积极性  谁让自己接触的早呢  为了省劲还是把简单的东西作为指导篇吧

 

多个activity之间的传值 其实就是onActivityResult,然后别忘了还有一个action的问题 就是在主xml中添加自己的action以便于识别,最后次activity别忘了finansh。

public class Wizard extends Activity {

    private TextView step1result, step2result, step3result;

    public static final String INTENT_STEP1 = "com.novoda.STEP1";
    public static final String INTENT_STEP2 = "com.novoda.STEP2";
    public static final String INTENT_STEP3 = "com.novoda.STEP3";

    private static final int STEP1 = 1;
    private static final int STEP2 = 2;
    private static final int STEP3 = 3;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.wizard);
        
        this.step1result = (TextView)findViewById(R.id.step1result);
        this.step2result = (TextView)findViewById(R.id.step2result);
        this.step3result = (TextView)findViewById(R.id.step3result);  
        
        startActivityForResult(new Intent(Wizard.INTENT_STEP1), STEP1);        
    }
    
    
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        switch (requestCode) {
            case STEP1:
                this.step1result.setText(data.getStringExtra("STEP1RESULT"));
                startActivityForResult(new Intent(Wizard.INTENT_STEP2), STEP2);    
                break;
            case STEP2:
                this.step2result.setText(data.getStringExtra("STEP2RESULT"));
                startActivityForResult(new Intent(Wizard.INTENT_STEP3), STEP3);    
                break;
            case STEP3:
                this.step3result.setText(data.getStringExtra("STEP3RESULT"));
                break;
        }
    }
}

 

public class Step1 extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.step1);

        Button nextStep = (Button)findViewById(R.id.goto2);
        nextStep.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Intent it = new Intent();
                it.putExtra("STEP1RESULT", ((EditText)findViewById(R.id.step1value)).getText()
                        .toString());
                setResult(Activity.RESULT_OK, it);
                finish();
            }
        });
    }
}

 

后面的step2 step3都是一样的了

然后还有主xml

<application android:icon="@drawable/icon" android:label="@string/app_name">
		<activity android:name=".Wizard" 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=".Step1" android:label="Step1">
			<intent-filter>
				<action android:name="com.novoda.STEP1" />
				<category android:name="android.intent.category.DEFAULT" />
			</intent-filter>
		</activity>

		<activity android:name=".Step2" android:label="Step2">
			<intent-filter>
				<action android:name="com.novoda.STEP2" />
				<category android:name="android.intent.category.DEFAULT" />
			</intent-filter>
		</activity>

		<activity android:name=".Step3" android:label="Step3">
			<intent-filter>
				<action android:name="com.novoda.STEP3" />
				<category android:name="android.intent.category.DEFAULT" />
			</intent-filter>
		</activity>
	</application>
	<uses-sdk android:minSdkVersion="7" />
</manifest>