public class QuizActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 当前设备版本号 >= API level 11
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {// 检查Android设备版本
ActionBar actionBar = getActionBar();//ActionBar来自于API level 11,而应用当前的最低版本为API level 8
actionBar.setSubtitle("Bodies of Water");
}
mCheatButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(QuizActivity.this,
CheatActivity.class);
intent.putExtra(CheatActivity.EXTRA_ANSWER_IS_TRUE,
mQuestionBank[mCurrentIndex].isTrueQuestion());
startActivityForResult(intent, 0);
// activty调用startActivity(...)方法时,调用请求实际上发送给操作系统的ActivityManager。
// ActivityManager负责创建Activity实例并调用其onCreate(...)方法。同一应用里的两个activity间,
// 通信却要借助于外部的ActivityManager,这可能有点奇怪。不过,这种模式会使不同应用间的activity交互变得容易得多。
}
});
}
}
package com.huangfei.geoquiz;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class CheatActivity extends Activity {
// activity可能启动自不同的地方,我们应该为activity获取和使用的extra定义key。使用包名来修饰extra数据信息,这样可以避免来自不同应用的extra间发生命名冲突。
public static final String EXTRA_ANSWER_IS_TRUE = "com.huangfei.geoquiz.answer_is_true";
public static final String EXTRA_ANSWER_SHOW = "com.huangfei.geoquiz.answer_show";
private TextView mAnswerShowTextView;
private Button mShowAnswer;
private boolean mAnswerIsTrue;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_cheat);
mAnswerIsTrue = getIntent().getBooleanExtra(EXTRA_ANSWER_IS_TRUE, false);
mAnswerShowTextView = (TextView) findViewById(R.id.answerTextView);
mShowAnswer = (Button) findViewById(R.id.showAnswerButton);
mShowAnswer.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(mAnswerIsTrue){
mAnswerShowTextView.setText(R.string.true_button);
}else {
mAnswerShowTextView.setText(R.string.false_button);
}
setAnswerShowResult(true);
}
});
}
private void setAnswerShowResult(boolean isAnswerShow) {
Intent data = new Intent();
data.putExtra(EXTRA_ANSWER_SHOW, isAnswerShow);
setResult(RESULT_OK, data);
}
}
版权声明:本文为tw19911005原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。