• 一、二周冲刺总结


    由于刚接触android-app的开发,很多问题都解决不了,连搭建环境都花了一个多星期才能解决,所以用了两周才完成了第一个Spring计划,在此要感谢大为同学的帮助才解决了android开发环境的搭建。

    目前程序只有一个简单(渣渣)的界面和最基本的运算功能,在写程序的时候突然想到小学生可能想加强自己薄弱的算法,就加了单项练习这个方面的功能(只是将本来的算法功能拆分了,而且造成了代码重复,这个问题以后再改善),现在的程序还有很多小问题,比如当没有输入答案是按按钮会使程序出错自动退出等,这些问题也会在后续的编写中完善。

    一开始接触android开发时根本不理解.java和res文件中layout文件中的.xml文件之间是如何关联起来了,最后是通过慕课网(http://www.imooc.com/)视频学习开始了解android开发的一些思路。

    贡献分:

    25郑泽成:3.5

    38李天麟:3

    39吴梓健:10

    40钟鹏升:3.5

    代码:

    src

    package com.example.szys;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    
    public class MainActivity extends Activity {
        
        Button start,end;
        int yourChose=-1;  
        private void showSinChosDia()  
        {  
            final String[] mList={"普通","困难(未进行)","加法练习","减法练习","乘法练习","除法练习"};  
            yourChose=-1;  
            AlertDialog.Builder sinChosDia=new AlertDialog.Builder(MainActivity.this);  
            sinChosDia.setTitle("难度/单项练习");  
            sinChosDia.setSingleChoiceItems(mList, 0, new DialogInterface.OnClickListener() {  
                  
                @Override  
                public void onClick(DialogInterface dialog, int which) {  
                    // TODO Auto-generated method stub  
                    yourChose=which;  
                      
                }  
            });  
            sinChosDia.setPositiveButton("确定", new DialogInterface.OnClickListener() {  
                  
                @Override  
                public void onClick(DialogInterface dialog, int which) {  
                    // TODO Auto-generated method stub  
                    if(yourChose==0)  
                    {  
                        Intent intent = new Intent(MainActivity.this, CalActivity.class); 
                        startActivity(intent); 
                    }  
                    if(yourChose==1)
                    {
                        /*Intent intent = new Intent(MainActivity.this, CalActivity2.class); 
                        startActivity(intent);*/
                    }
                    if(yourChose==2)
                    {
                        Intent intent = new Intent(MainActivity.this, CalActivity2.class); 
                        startActivity(intent);
                    }
                    if(yourChose==3)
                    {
                        Intent intent = new Intent(MainActivity.this, CalActivity3.class); 
                        startActivity(intent);
                    }
                    if(yourChose==4)
                    {
                        Intent intent = new Intent(MainActivity.this, CalActivity4.class); 
                        startActivity(intent);
                    }
                    if(yourChose==5)
                    {
                        Intent intent = new Intent(MainActivity.this, CalActivity5.class); 
                        startActivity(intent);
                    }
                }  
            });  
            sinChosDia.create().show();  
        }  
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            start=(Button) findViewById(R.id.button1);
            start.setOnClickListener(new Button.OnClickListener(){
                
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    showSinChosDia();
                    
                }
            });
            end=(Button) findViewById(R.id.button3);
            end.setOnClickListener(new Button.OnClickListener(){
                
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    System.exit(0);
                }
            });
        }
       
    }
    MainActivity
    package com.example.szys;
    
    import java.math.*;
    import java.util.Random;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.TextView;
    
    public class CalActivity extends Activity {
        int op;
        int a;
        int b;
        int n=0;
        int w=0;
        String r;
        Double answer,respon;
        TextView textview1,textview2;
        EditText editText;
        Button button;
         @Override
         protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.cal_main);
             textview1=(TextView)findViewById(R.id.textView1);
             textview2=(TextView)findViewById(R.id.textView2);
             editText=(EditText)findViewById(R.id.EditText1);
                 a =new Random().nextInt(100);
                b =new Random().nextInt(100);
                op=new Random().nextInt(4);
                switch(op)
                {
                case 0:
                    textview1.setText(a+"+"+b+"=");
                    answer=(double) (a+b);
                    break;
                case 1:
                    textview1.setText(a+"-"+b+"=");
                    answer=(double) (a-b);
                    break;
                case 2:
                    textview1.setText(a+"*"+b+"=");
                    answer=(double) (a*b);
                    break;
                case 3:
                    while(b==0){
                        b =new Random().nextInt(100);
                    }
                    textview1.setText(a+"/"+b+"=");
                    BigDecimal   x   =   new   BigDecimal((double)a/b);  
                    answer  =   x.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();  
                    
                    break;
                }
                button=(Button)findViewById(R.id.button4);
                button.setOnClickListener(new Button.OnClickListener(){
    
                    @Override
                    public void onClick(View arg0) {
                        // TODO Auto-generated method stub
                        respon=Double.parseDouble(editText.getText().toString());
                        r=textview1.getText().toString();
                        editText.setText("");
                        n++;
                        if(respon.equals(answer))
                        {
                            textview2.setText("你答对了!");
                        }
                        else{
                            w++;
                            textview2.setText("你答错了!
    "+r+answer);
                        }
                        if(n<5)
                        {
                            a =new Random().nextInt(100);
                            b =new Random().nextInt(100);
                            op=new Random().nextInt(4);
                            switch(op)
                            {
                            case 0:
                                textview1.setText(a+"+"+b+"=");
                                answer=(double) (a+b);
                                break;
                            case 1:
                                textview1.setText(a+"-"+b+"=");
                                answer=(double) (a-b);
                                break;
                            case 2:
                                textview1.setText(a+"*"+b+"=");
                                answer=(double) (a*b);
                                break;
                            case 3:
                                while(b==0){
                                    b =new Random().nextInt(100);
                                }
                                textview1.setText(a+"/"+b+"=");
                                BigDecimal   x   =   new   BigDecimal((double)a/b);  
                                answer  =   x.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();  
                                
                                break;
                            }
                        }
                        else
                        {
                            int right=n-w;
                            double rvate=(double)right/n*100;
                            AlertDialog.Builder builder = new AlertDialog.Builder(CalActivity.this);            
                            builder.setTitle("结束");  
                            builder.setMessage("你答对了"+right+"题"+"
    "+"答错了"+w+"题"+"
    "+"正确率为"+rvate+"%");  
                            builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {  
                                
                                public void onClick(DialogInterface dialog, int whichButton) {  
                                    Intent intent = new Intent(CalActivity.this, MainActivity.class); 
                                    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                                    startActivity(intent);
                                }  
                            });  
                            builder.create().show();
                        }
                    }
                    
                });
               
         }
         
    }
    CalActivity
    package com.example.szys;
    
    import java.math.*;
    import java.util.Random;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.TextView;
    
    public class CalActivity2 extends Activity {
        int a;
        int b;
        int n=0;
        int w=0;
        String r;
        Double answer,respon;
        TextView textview1,textview2;
        EditText editText;
        Button button;
         @Override
         protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.cal_main);
             textview1=(TextView)findViewById(R.id.textView1);
             textview2=(TextView)findViewById(R.id.textView2);
             editText=(EditText)findViewById(R.id.EditText1);
                 a =new Random().nextInt(100);
                b =new Random().nextInt(100);
               
                    textview1.setText(a+"+"+b+"=");
                    answer=(double) (a+b);
                   
                button=(Button)findViewById(R.id.button4);
                button.setOnClickListener(new Button.OnClickListener(){
    
                    @Override
                    public void onClick(View arg0) {
                        // TODO Auto-generated method stub
                        respon=Double.parseDouble(editText.getText().toString());
                        r=textview1.getText().toString();
                        editText.setText("");
                        n++;
                        if(respon.equals(answer))
                        {
                            textview2.setText("你答对了!");
                        }
                        else{
                            w++;
                            textview2.setText("你答错了!
    "+r+answer);
                        }
                        if(n<5)
                        {
                            a =new Random().nextInt(100);
                            b =new Random().nextInt(100);
                           
                                textview1.setText(a+"+"+b+"=");
                                answer=(double) (a+b);
                               
                        }
                        else
                        {
                            int right=n-w;
                            double rvate=(double)right/n*100;
                            AlertDialog.Builder builder = new AlertDialog.Builder(CalActivity2.this);            
                            builder.setTitle("结束");  
                            builder.setMessage("你答对了"+right+"题"+"
    "+"答错了"+w+"题"+"
    "+"正确率为"+rvate+"%");  
                            builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {  
                                
                                public void onClick(DialogInterface dialog, int whichButton) {  
                                    Intent intent = new Intent(CalActivity2.this, MainActivity.class); 
                                    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                                    startActivity(intent);
                                }  
                            });  
                            builder.create().show();
                        }
                    }
                    
                });
    
         }
    }
    CalActivity2
    package com.example.szys;
    
    import java.math.*;
    import java.util.Random;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.TextView;
    
    public class CalActivity3 extends Activity {
        
        int a;
        int b;
        int n=0;
        int w=0;
        String r;
        Double answer,respon;
        TextView textview1,textview2;
        EditText editText;
        Button button;
         @Override
         protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.cal_main);
             textview1=(TextView)findViewById(R.id.textView1);
             textview2=(TextView)findViewById(R.id.textView2);
             editText=(EditText)findViewById(R.id.EditText1);
                 a =new Random().nextInt(100);
                b =new Random().nextInt(100);
               
                    textview1.setText(a+"-"+b+"=");
                    answer=(double) (a-b);
                   
                button=(Button)findViewById(R.id.button4);
                button.setOnClickListener(new Button.OnClickListener(){
    
                    @Override
                    public void onClick(View arg0) {
                        // TODO Auto-generated method stub
                        respon=Double.parseDouble(editText.getText().toString());
                        r=textview1.getText().toString();
                        editText.setText("");
                        n++;
                        if(respon.equals(answer))
                        {
                            textview2.setText("你答对了!");
                        }
                        else{
                            w++;
                            textview2.setText("你答错了!
    "+r+answer);
                        }
                        if(n<5)
                        {
                            a =new Random().nextInt(100);
                            b =new Random().nextInt(100);
                           
                                textview1.setText(a+"-"+b+"=");
                                answer=(double) (a-b);
                        }
                        else
                        {
                            int right=n-w;
                            double rvate=(double)right/n*100;
                            AlertDialog.Builder builder = new AlertDialog.Builder(CalActivity3.this);            
                            builder.setTitle("结束");  
                            builder.setMessage("你答对了"+right+"题"+"
    "+"答错了"+w+"题"+"
    "+"正确率为"+rvate+"%");  
                            builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {  
                                
                                public void onClick(DialogInterface dialog, int whichButton) {  
                                    Intent intent = new Intent(CalActivity3.this, MainActivity.class); 
                                    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                                    startActivity(intent);
                                }  
                            });  
                            builder.create().show();
                        }
                    }
                    
                });
    
         }
    }
    CalActivity3
    package com.example.szys;
    
    import java.math.*;
    import java.util.Random;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.TextView;
    
    public class CalActivity4 extends Activity {
        
        int a;
        int b;
        int n=0;
        int w=0;
        String r;
        Double answer,respon;
        TextView textview1,textview2;
        EditText editText;
        Button button;
         @Override
         protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.cal_main);
             textview1=(TextView)findViewById(R.id.textView1);
             textview2=(TextView)findViewById(R.id.textView2);
             editText=(EditText)findViewById(R.id.EditText1);
                 a =new Random().nextInt(100);
                b =new Random().nextInt(100);
                
                    textview1.setText(a+"*"+b+"=");
                    answer=(double) (a*b);
                   
                button=(Button)findViewById(R.id.button4);
                button.setOnClickListener(new Button.OnClickListener(){
    
                    @Override
                    public void onClick(View arg0) {
                        // TODO Auto-generated method stub
                        respon=Double.parseDouble(editText.getText().toString());
                        r=textview1.getText().toString();
                        editText.setText("");
                        n++;
                        if(respon.equals(answer))
                        {
                            textview2.setText("你答对了!");
                        }
                        else{
                            w++;
                            textview2.setText("你答错了!
    "+r+answer);
                        }
                        if(n<5)
                        {
                            a =new Random().nextInt(100);
                            b =new Random().nextInt(100);
                           
                                textview1.setText(a+"*"+b+"=");
                                answer=(double) (a*b);
                            
                        }
                        else
                        {
                            int right=n-w;
                            double rvate=(double)right/n*100;
                            AlertDialog.Builder builder = new AlertDialog.Builder(CalActivity4.this);            
                            builder.setTitle("结束");  
                            builder.setMessage("你答对了"+right+"题"+"
    "+"答错了"+w+"题"+"
    "+"正确率为"+rvate+"%");  
                            builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {  
                                
                                public void onClick(DialogInterface dialog, int whichButton) {  
                                    Intent intent = new Intent(CalActivity4.this, MainActivity.class); 
                                    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                                    startActivity(intent);
                                }  
                            });  
                            builder.create().show();
                        }
                    }
                    
                });
    
         }
    }
    CalActivity4
    package com.example.szys;
    
    import java.math.*;
    import java.util.Random;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.TextView;
    
    public class CalActivity5 extends Activity {
        
        int a;
        int b;
        int n=0;
        int w=0;
        String r;
        Double answer,respon;
        TextView textview1,textview2;
        EditText editText;
        Button button;
         @Override
         protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.cal_main);
             textview1=(TextView)findViewById(R.id.textView1);
             textview2=(TextView)findViewById(R.id.textView2);
             editText=(EditText)findViewById(R.id.EditText1);
                 a =new Random().nextInt(100);
                b =new Random().nextInt(100);
                
                    while(b==0){
                        b =new Random().nextInt(100);
                    }
                    textview1.setText(a+"/"+b+"=");
                    BigDecimal   x   =   new   BigDecimal((double)a/b);  
                    answer  =   x.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();  
                    
                   
                button=(Button)findViewById(R.id.button4);
                button.setOnClickListener(new Button.OnClickListener(){
    
                    @Override
                    public void onClick(View arg0) {
                        // TODO Auto-generated method stub
                        respon=Double.parseDouble(editText.getText().toString());
                        r=textview1.getText().toString();
                        editText.setText("");
                        n++;
                        if(respon.equals(answer))
                        {
                            textview2.setText("你答对了!");
                        }
                        else{
                            w++;
                            textview2.setText("你答错了!
    "+r+answer);
                        }
                        if(n<5)
                        {
                            a =new Random().nextInt(100);
                            b =new Random().nextInt(100);
                           
                                while(b==0){
                                    b =new Random().nextInt(100);
                                }
                                textview1.setText(a+"/"+b+"=");
                                BigDecimal   x   =   new   BigDecimal((double)a/b);  
                                answer  =   x.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();  
                               
                            
                        }
                        else
                        {
                            int right=n-w;
                            double rvate=(double)right/n*100;
                            AlertDialog.Builder builder = new AlertDialog.Builder(CalActivity5.this);            
                            builder.setTitle("结束");  
                            builder.setMessage("你答对了"+right+"题"+"
    "+"答错了"+w+"题"+"
    "+"正确率为"+rvate+"%");  
                            builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {  
                                
                                public void onClick(DialogInterface dialog, int whichButton) {  
                                    Intent intent = new Intent(CalActivity5.this, MainActivity.class); 
                                    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                                    startActivity(intent);
                                }  
                            });  
                            builder.create().show();
                        }
                    }
                    
                });
    
         }
    }
    CalActivity5


    res--->layout

    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">
    
        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" 
            android:layout_gravity="center">
            
            <Button
            android:id="@+id/button1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="开始" />
    
                <Button
            android:id="@+id/button2"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="历史数据(未进行)" />
    
                <Button
            android:id="@+id/button3"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="退出" />
    
        </LinearLayout>
    
        
    
    </FrameLayout>
    activity_main
    <?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:orientation="vertical" >
    
        <LinearLayout
           android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" 
            android:layout_gravity="center">
    
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center" >
    
                <TextView
                    android:id="@+id/textView1"
                    android:layout_width="93dp"
                    android:layout_height="wrap_content"
                    android:editable="true"
                    android:text="" />
    
                <EditText
                    android:id="@+id/EditText1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:digits="1234567890.-"
                    android:ems="10"
                    android:numeric="decimal"
                    android:text="" >
    
                    <requestFocus />
                </EditText>
            </LinearLayout>
    
            <Button
            android:id="@+id/button4"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="确定" />
    
            <TextView
                android:id="@+id/textView2"
                android:layout_width="match_parent"
                android:layout_height="70dp"
                android:editable="true"
                android:text="" />
            
        </LinearLayout>
    
    </LinearLayout>
    cal_main

    程序截图:

  • 相关阅读:
    7_布局管理器.md
    5_资源文件.md
    css tabbar添加激活样式,竖条
    云代码仓库,git使用
    express配置跨域
    跨域无法携带cookie,samesite警告
    Syntax Error: TypeError: Cannot read property 'parseComponent' of undefined
    django使用uwsgi启动
    linux下安装配置python3.6、虚拟环境
    linux下virtualenvwrapper、python虚拟环境命令操作
  • 原文地址:https://www.cnblogs.com/wuzijian/p/4549073.html
Copyright © 2020-2023  润新知