GeoQuiz 第二章挑战练习代码

来源:互联网 发布:11对战平台网络问题 编辑:程序博客网 时间:2024/06/05 20:43

QuizActivity.java:

public class QuizActivity extends AppCompatActivity {  private Button mTrueButton;  private Button mFalseButton;  private ImageButton mNextButton;  private ImageButton mPreviousButton;  private TextView mQuestionTextView;  private TrueFalse[] mQuestionBank = new TrueFalse[]{  new TrueFalse(R.string.question_a,false),  new TrueFalse(R.string.question_b,true),  new TrueFalse(R.string.question_c,true),  new TrueFalse(R.string.question_d,false),  new TrueFalse(R.string.question_e,false),  };  private int mCurrentIndex = 0;  public QuizActivity() {  }  private void updateQuestion(){int question = mQuestionBank[mCurrentIndex].getQuestion();mQuestionTextView.setText(question);  }  private void checkAnswer(boolean userPressedTrue){boolean answerIsTrue = mQuestionBank[mCurrentIndex].isTrueQuestion();int messageResId = 0;if (userPressedTrue == answerIsTrue){  messageResId = R.string.correct_toast;}else{  messageResId = R.string.incorrect_toast;}Toast.makeText(this,messageResId,Toast.LENGTH_SHORT).show();  }  @Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_quiz);mQuestionTextView = (TextView)findViewById(R.id.question_text_view);mQuestionTextView.setOnClickListener(new View.OnClickListener() {  @Overridepublic void onClick(View v){    mCurrentIndex = (mCurrentIndex + 1)% mQuestionBank.length;    updateQuestion();  }});mTrueButton=(Button)findViewById(R.id.true_button);mTrueButton.setOnClickListener(new View.OnClickListener() {  @Override  public void onClick(View v) {    checkAnswer(true);  }});mFalseButton=(Button)findViewById(R.id.false_button);mFalseButton.setOnClickListener(new View.OnClickListener() {  @Override  public void onClick(View v) {    checkAnswer(false);  }});mNextButton = (ImageButton)findViewById(R.id.next_button);mNextButton.setOnClickListener(new View.OnClickListener(){  @Overridepublic void onClick(View v){    mCurrentIndex = (mCurrentIndex + 1)% mQuestionBank.length;    updateQuestion();  }});updateQuestion();mPreviousButton = (ImageButton)findViewById(R.id.previous_button);mPreviousButton.setOnClickListener(new View.OnClickListener(){  @Override  public void onClick(View v){    mCurrentIndex = (mCurrentIndex + 4) % mQuestionBank.length;    updateQuestion();  }});Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);setSupportActionBar(toolbar);FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);fab.setOnClickListener(new View.OnClickListener() {  @Override public void onClick(View view) {    Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)        .setAction("Action", null)        .show();  }});  }  @Override public boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.menu_quiz, menu);return true;  }  @Override public boolean onOptionsItemSelected(MenuItem item) {// Handle action bar item clicks here. The action bar will// automatically handle clicks on the Home/Up button, so long// as you specify a parent activity in AndroidManifest.xml.int id = item.getItemId();//noinspection SimplifiableIfStatementif (id == R.id.action_settings) {  return true;}return super.onOptionsItemSelected(item);  }}

content_quiz:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:gravity="center"android:orientation="vertical" ><TextView    android:id="@+id/question_text_view"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:padding="24dp"    /><LinearLayout    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:orientation="horizontal"    ><Button    android:id="@+id/true_button"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="@string/true_button"    /><Button    android:id="@+id/false_button"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="@string/false_button"    /></LinearLayout><LinearLayout    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:orientation="horizontal"    >    <ImageButton        android:id="@+id/previous_button"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:src="@drawable/arrow_left"        />    <ImageButton        android:id="@+id/next_button"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:src="@drawable/arrow_right"        /></LinearLayout>

总结

  1. java 基础部分需要继续巩固。
  2. 多查阅官网,熟悉各种组件。
0 0
原创粉丝点击