团队成员:陈淑筠、杨家安、陈曦

团队选题:小学四则运算APP

第二次冲刺阶段时间:11.29~12.09

本次发布的是已完成的功能二(选择题):

ChoiceActivity.java:

package com.example.calculator;

import java.util.Random;

import android.os.Bundle;
import android.app.ActionBar;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.RadioButton;
import android.widget.TextView;
import android.widget.Toast;

public class ChoiceActivity extends Activity {
	private TextView text1,text2,text3;
	private CheckBox checkbox1,checkbox2,checkbox3,checkbox4;
	private Button btn;
	
	private final Random num1=new Random();
	private final Random num2=new Random();
	private final Random num3=new Random();
	private final Random r = new Random();
	private int x1;
	private int x2;
	private int x3;
	
	private char[] ch={'+','-','*','/'}; //字符数组
	private int index = r.nextInt(ch.length); //随机数,小于数组的长度数, 0~3
	private char d=ch[index];

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		ActionBar actionBar=getActionBar();
		actionBar.setDisplayShowHomeEnabled(true);
		actionBar.setDisplayHomeAsUpEnabled(true);
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_choice);
		text1=(TextView)findViewById(R.id.textView1);
		text2=(TextView)findViewById(R.id.textView2);
		text3=(TextView)findViewById(R.id.textView3);
		
		checkbox1=(CheckBox)findViewById(R.id.checkBox1);
		checkbox2=(CheckBox)findViewById(R.id.checkBox2);
		checkbox3=(CheckBox)findViewById(R.id.checkBox3);
		checkbox4=(CheckBox)findViewById(R.id.checkBox4);
		btn=(Button)findViewById(R.id.button1);
		
		final String a=String.valueOf(num1.nextInt(100));
		x1=Integer.valueOf(a);
		final String b=String.valueOf(num2.nextInt(100));
		x2=Integer.valueOf(b);
		final String c=String.valueOf(num3.nextInt(100));
		final String e=String.valueOf(d);
		
		
		text1.setText(a);
		text3.setText(b);
		text2.setText(e);
		
		
		checkbox1.setText(a);
		checkbox2.setText(b);
		checkbox4.setText(c);
		
		if(index==0){
			x3=x1+x2;
			final String h=String.valueOf(x3);
			checkbox3.setText(h);
		}
		if(index==1){
			x3=x1-x2;
			final String h=String.valueOf(x3);
			checkbox3.setText(h);
		}
		if(index==2){
			x3=x1*x2;
			final String h=String.valueOf(x3);
			checkbox3.setText(h);
		}
		if(index==3){
			x3=x1/x2;
			final String h=String.valueOf(x3);
			checkbox3.setText(h);
		}
		
		btn.setOnClickListener(new OnClickListener() {
			final String h=String.valueOf(x3);
			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				if(checkbox3.isChecked()){
					Toast.makeText(ChoiceActivity.this, "正确", Toast.LENGTH_SHORT).show();
				}
				if(!(checkbox3.isChecked())){
					Toast.makeText(ChoiceActivity.this, "错误"+h, Toast.LENGTH_SHORT).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.choice, menu);
		return true;
	}
	
	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		// TODO Auto-generated method stub
		switch (item.getItemId()) {
		case android.R.id.home:
			//创建启动MainActivity的Intent
			Intent intent=new Intent(this,TypesActivity.class);
			//添加额外的Flag,将Activity栈中处于MainActivity之上的Activity弹出
			intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
			startActivity(intent);
			break;

		default:
			break;
		}
		return super.onOptionsItemSelected(item);
	}

}

activity_choice.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:background="@drawable/animal"
    tools:context=".ChoiceActivity" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="50dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="100dp" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="30dp"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textView1"
        android:layout_alignBottom="@+id/textView1"
        android:layout_toRightOf="@+id/textView1" />

    <TextView
        android:id="@+id/textView3"
        android:layout_width="50dp"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textView2"
        android:layout_alignBottom="@+id/textView2"
        android:layout_toRightOf="@+id/textView2" />

    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textView3"
        android:layout_alignBottom="@+id/textView3"
        android:layout_toRightOf="@+id/textView3"
        android:text="=" />

    <CheckBox
        android:id="@+id/checkBox2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/checkBox1"
        android:layout_below="@+id/checkBox1"
        android:layout_marginTop="14dp" />

    <CheckBox
        android:id="@+id/checkBox3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/checkBox2"
        android:layout_below="@+id/checkBox2"
        android:layout_marginTop="17dp" />

    <CheckBox
        android:id="@+id/checkBox1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true" />

    <CheckBox
        android:id="@+id/checkBox4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/button1"
        android:layout_alignLeft="@+id/checkBox3" />

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:text="确定" />

    

</RelativeLayout>

运行结果:

 

按“选择题练习”按钮后:

 

选择正确答案后显示正确:

 

选择错误答案后显示错误:

 

虽然功能实现了,可是界面还不美观,继续完善!