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

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

第一次冲刺阶段时间:11.17~11.27

思考:初步了解小学四则运算数是在100以内的加减乘除,首先先从简单的地方入手,把最基础的算法功能做成功,然后再慢慢一步一步加深其功能,越来越完善!

以下是今天的成果:

MainActivity.java

package com.example.calculator;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {
	
	private Button begin;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		begin=(Button)findViewById(R.id.button1);
		begin.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				Intent intent=new Intent();
				intent.setClass(MainActivity.this, CalculatorActivity.class);
				startActivity(intent);
				MainActivity.this.finish();
			}
		});
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

}

 

activity_main.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:background="@drawable/sea"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="122dp"
        android:text="@string/hello_world"
        android:textSize="@dimen/btnTextSize" />

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView2"
        android:layout_alignRight="@+id/textView2"
        android:layout_below="@+id/textView2"
        android:layout_marginTop="116dp"
        android:text="进入"
        android:textSize="@dimen/btnTextSizes" />

</RelativeLayout>

  

CalculatorActivity.java

package com.example.calculator;

import java.util.Random;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

public class CalculatorActivity extends Activity {
	private final Random num1=new Random();
	private final Random num2=new Random();
	private final Random r = new Random();
	private char[] ch = {'+','-','*','/'}; //字符数组
	private int index = r.nextInt(ch.length); //随机数,小于数组的长度数, 0~3
	private char a=ch[index];
	private TextView text1,text2,text3;
	private EditText answer;
	private Button surebutton;//确定按钮

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_calculator);
		text1=(TextView)findViewById(R.id.textView1);//随机数字
		text2=(TextView)findViewById(R.id.textView2);//运算符号
		text3=(TextView)findViewById(R.id.textView3);//随机数字
		
		answer=(EditText)findViewById(R.id.editText1);//运算结果
		final String b= answer.getText().toString();//获取输入的数值
		
		final String c=String.valueOf(num1.nextInt(100));
		String d=String.valueOf(a);
		final String e=String.valueOf(num2.nextInt(100));
		text1.setText(c);//随机数1-100
		text2.setText(d);//随机运算符+,-,*,/
		text3.setText(e);//随机数1-100
		
		
		surebutton=(Button)findViewById(R.id.surebutton);//确定按钮
		surebutton.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				if(index==0){
					if(b==c+e){
						Toast.makeText(CalculatorActivity.this, "正确", Toast.LENGTH_SHORT).show();
					}
					if(!(b==c+e)){
						Toast.makeText(CalculatorActivity.this, "错误", 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.calculator, menu);
		return true;
	}

}
activity_calculator.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"
    tools:context=".CalculatorActivity" >

    <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="=" />

    <EditText
        android:id="@+id/editText1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textView4"
        android:layout_alignBottom="@+id/textView4"
        android:layout_marginLeft="38dp"
        android:layout_toRightOf="@+id/textView4"
        android:ems="10"
        android:inputType="number" >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/surebutton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView3"
        android:layout_below="@+id/editText1"
        android:layout_marginLeft="18dp"
        android:layout_marginTop="88dp"
        android:text="确定" />

</RelativeLayout>

运行结果如下图:

         

 

总结:第一天只设置了两个界面,发现运算结果出错,原来是因为CalculatorActivity.java里只设置了“+”号,所以还需分别设置“-”,“*”,“/”这几种情况,界面和背景总体还有待加强。

团队讨论情况如下: