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
      1333004-20180618154431905-923855687.jpg

    • 第一步,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么?\n\t很好玩的!!"
    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();

    1333004-20180618154458136-69721363.jpg

  • 界面二
    • 建造了两个Button,两个EditText,两个TextView和一个Toast其中Button是实现Pop和Push,EditText用来标注TextView中的内容的,TextView用来写入数字和产生栈信息的。
      1333004-20180618154334887-850816083.jpg

    • 第一步,两个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的方法。下次做实验一定会全部完成之后在进行提交的。

参考资料

转载于:https://www.cnblogs.com/sanjinge/p/9195333.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值