20172305 2017-2018-2 《程序设计与数据结构》课堂测试报告

Posted sanjinge

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20172305 2017-2018-2 《程序设计与数据结构》课堂测试报告相关的知识,希望对你有一定的参考价值。

20172305 2017-2018-2 《程序设计与数据结构》课堂测试报告

课程:《程序设计与数据结构》
班级: 1723
姓名: 谭鑫
学号: 20172305
实验教师:王志强老师
测试日期:2018年5月28日
必修/选修: 必修

1.测试内容

  • android开发实践:Android平台上开发移动程序,模拟栈的操作:Push和Pop

2. 测试过程及结果

  • 设计思路:

    • 在Java环境下运用的stack栈的方法应用到Android开发环境
    • 分别实现Push和Pop两个方法
    • 合理优化Android界面
  • 步骤:

    • 建立活动的App名称,确定界面至少有两个Button,两个EditText。

      • Button1 : 实现Push方法
      • Button2 : 实现Pop方法
      • EditText1 : 实现写入栈内的数字
      • EditText1 : 实现栈内信息的显示
  • 界面一

    • 进行优化,做了一个Toast、一个TextView、一个Button
      技术分享图片

    • 第一步,Toast,做了一个气泡,标注我的学号名字,以及改版的STACK

      Toast toast = Toast.makeText(this,"20172305谭鑫,改版的STACK。",Toast.LENGTH_LONG);
      toast.show(); 
    • 第二步,Button,做了一个按钮,进行开启对话框,通过对话框再开启第二个界面.第一行是添加按钮内的内容,第二行是使内容变色为粉色(深粉色),第三行是加粗内容。

      android:text="开启STACK"
      android:textColor="@color/colorAccent"
      android:textStyle="bold"
    • 第三步,TextView,做了一个显示文本,第一行是添加文本内容,第二行是添加字体大小。

      android:text="想试试stack么?
      	很好玩的!!"
      android:textSize="40dp"
    • 第四步,做对话框,在之前的版本上没有这部分,我是在看过同学的代码之后进行添加的,通过对话框进行跳转到第二个界面,正式开启栈的相关内容。

      AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this);
          dialog.setTitle("STACK");
          dialog.setMessage("想尝试么?");
          dialog.setCancelable(false);
          dialog.setPositiveButton("继续", new DialogInterface.OnClickListener() {
              @Override
              public void onClick(DialogInterface dialogInterface, int i) {
                  Intent intent = new Intent(MainActivity.this,SecondActivity.class);
                  startActivity(intent);
              }
          });
          dialog.setNegativeButton("退出", new DialogInterface.OnClickListener() {
              @Override
              public void onClick(DialogInterface dialogInterface, int i) {
              }
          });
          dialog.show();

      技术分享图片

  • 界面二

    • 建造了两个Button,两个EditText,两个TextView和一个Toast其中Button是实现Pop和Push,EditText用来标注TextView中的内容的,TextView用来写入数字和产生栈信息的。
      技术分享图片

    • 第一步,两个Button,两个的第一行是按钮的名字,第二行均进行不同颜色的改写,第三行进行加粗。

      android:text="Push"
      android:textColor="@color/green"
      android:textStyle="bold"
      android:text="Pop"
      android:textColor="@color/red"
      android:textStyle="bold"
    • 第二步,两个TextView,用来标注EditText内的信息,区分两个框内的内容。进行了颜色(蓝色)和大小的改写

      android:text="存栈数字:"
      android:textColor="@color/blue"
      android:textSize="25dp"
      android:text="栈信息:"
      android:textColor="@color/blue"
      android:textSize="25dp"
    • 第三步,一个Toast,没什么用,就是标识一下是“测试”

      Toast toast = Toast.makeText(this,"测试",Toast.LENGTH_LONG);
      toast.show();
    • 第四步,主体部分,在两个EditText内使用Stack.pop和Stack.push。

      EditText editText1 = (EditText)findViewById(R.id.editText1);
      stack.push(editText1.getText().toString());
      System.out.println(editText1.getText().toString());
      EditText editText2=(EditText)findViewById(R.id.editText2);
      editText2.setText(editText1.getText(), TextView.BufferType.EDITABLE);
      editText2.setText(stack.toString(), TextView.BufferType.EDITABLE);
      EditText editText2=(EditText)findViewById(R.id.editText2);    
      stack.pop();
      editText2.setText(stack.toString(), TextView.BufferType.EDITABLE);

3. 测试过程中遇到的问题和解决过程

  • 问题1:在修改内容颜色的时候没有颜色
  • 问题1解决方案:在网上查找添加颜色的方法,在工程目录values文件夹下的color.xml内添加以颜色即可。

  • 问题2:对话框
  • 问题2解决方案:通过看同学的代码内容,理解了建立对话框的代码,dialog.setTitle("STACK");是标题的部分,dialog.setMessage("想尝试么?");是主体信息,dialog.setPositiveButton("继续", new DialogInterface.OnClickListener()是开启第二个界面的,dialog.setNegativeButton("退出", new DialogInterface.OnClickListener()是退出,不跳转到第二个界面。只是浅层次的学习了一下对话框,会在以后学习对话框,并尝试不同风格的对话框。

其他(感悟、思考等)

这是第一次使用Android Studio开发小程序,在成功实现了Push的方法之后,虽然做了Pop的Button键,但是没有实现Pop的方法。下次做实验一定会全部完成之后在进行提交的。

参考资料

以上是关于20172305 2017-2018-2 《程序设计与数据结构》课堂测试报告的主要内容,如果未能解决你的问题,请参考以下文章

20172305 2017-2018-2 《程序设计与数据结构》课堂测试报告

20172305 2017-2018-2 《程序设计与数据结构》实验三报告

20172305 2017-2018-2 《程序设计与数据结构》实验报告

20172305 2017-2018-2 《程序设计与数据结构》第三周学习总结

20172305 2017-2018-2 《程序设计与数据结构》第十一周学习总结

20172305 2017-2018-2 《程序设计与数据结构》第一周学习总结