20155224 实验四 Android程序设计 实验报告


实验报告封面:

  1. 课程:Java程序设计 班级:1652 姓名:王高源 学号:20165225
  2. 指导教师:娄嘉鹏 实验日期:2018514
  3. 实验时间:335 - 515 实验序号:实验4
  4. 实验名称:Android程序设计
  5. 实验内容:
  6. 实验要求
  7. 1.Android Stuidio的安装测试:参考《JavaAndroid开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十四章:
  8. 2.参考http://www.cnblogs.com/rocedu/p/6371315.html#SECANDROID,安装 Android Stuidio
  9. 3.完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号,自己学号前后一名同学的学号,提交代码运行截图和码云Git链接,截图没有学号要扣分
  10. 4.学习Android Stuidio调试应用程序
  11. 实验要求:
  12. - 没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》 课程
  13. - 完成实验、撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等)、解决办法(空洞的方法如“查网络”、“问同学”、“看书”等一律得0分)以及分析(从中可以得到什么启示,有什么收获,教训等)。报告可以参考范飞龙老师的指导
  14. 严禁抄袭,有该行为者实验成绩归零,并附加其他惩罚措施。

实验步骤:

Android Studio的安装与运行:

  • Android Studio的安装与运行

  • Android Studio的安装包并进行安装。

    需要安装Android的SDK,就像java里面的JDK一样。

    由于要在虚拟的手机上显示,自然还需要虚拟机。

  • 接着按照老师的博客给出的步骤完成jdk配置(第一次安这个都要配)

  • 这样选就可以安好了

  • 任务一:

  • 完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号。

  • 根据老师的博客运行了Android Stuidio,然后运行了Helloworld进行设备测试并修改了xml文件。

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. xmlns:app="http://schemas.android.com/apk/res-auto"
  4. xmlns:tools="http://schemas.android.com/tools"
  5. android:layout_width="match_parent"
  6. android:layout_height="match_parent"
  7. tools:context="com.example.a1.helloworld.MainActivity">
  8. <TextView
  9. android:layout_width="wrap_content"
  10. android:layout_height="wrap_content"
  11. android:text="Hello World!Hello World!20155329 20165225 20165331"
  12. app:layout_constraintBottom_toBottomOf="parent"
  13. app:layout_constraintLeft_toLeftOf="parent"
  14. app:layout_constraintRight_toRightOf="parent"
  15. app:layout_constraintTop_toTopOf="parent" />
  16. </android.support.constraint.ConstraintLayout>
  • 运行截图:

  • 任务二:

  • 创建 ThirdActivity, 在ThirdActivity中显示自己的学号,修改代码让MainActivity启动ThirdActivity

  • 在这个任务中,我们需要调用ThirdActivity,所以在AndroidManifest.xml中再添加一个activity...>。并且每一个控制文件的Activity都需要有对应的启动程序文件(.java),和相应的布局文件(.xml)。

    在这个任务中,要求让MainActivity启动ThirdActivity,所以还需要修改MainActivity。

  • MainActivity.java

  1. package com.example.Calpernia.helloworld;
  2. import android.support.v7.app.AppCompatActivity;
  3. import android.os.Bundle;
  4. public class MainActivity extends AppCompatActivity {
  5. @Override
  6. protected void onCreate(Bundle savedInstanceState) {
  7. super.onCreate(savedInstanceState);
  8. // setContentView(R.layout.activity_main);
  9. setContentView(R.layout.activity_third);
  10. }
  11. }
  • thirdactivity_main.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. xmlns:app="http://schemas.android.com/apk/res-auto"
  4. xmlns:tools="http://schemas.android.com/tools"
  5. android:layout_width="match_parent"
  6. android:layout_height="match_parent"
  7. tools:context=".ThirdActivity">
  8. <TextView
  9. android:layout_width="wrap_content"
  10. android:layout_height="wrap_content"
  11. android:text="20165225王高源" />
  12. </android.support.constraint.ConstraintLayout>
  • 运行截图:

  • 任务三:

  • 修改代码让Toast消息中显示自己的学号信息

  • 只需要在这个任务需要在mainActivity中添加代码:

  1. Button btnshow1 = (Button) findViewById(R.id.btn1);
  2. btnshow1.setOnClickListener(new View.OnClickListener() {
  3. @Override
  4. public void onClick(View v) {
  5. Toast toast = Toast.makeText(MainActivity.this, "20155225王高源", Toast.LENGTH_LONG);
  6. toast.show();
  7. }
  8. });
  • MainActivity.java
  1. package com.example.Calpernia.toast;
  2. import android.support.v7.app.AppCompatActivity;
  3. import android.os.Bundle;
  4. import android.view.View;
  5. import android.widget.Button;
  6. import android.widget.Toast;
  7. public class MainActivity extends AppCompatActivity {
  8. @Override
  9. protected void onCreate(Bundle savedInstanceState) {
  10. super.onCreate(savedInstanceState);
  11. setContentView(R.layout.activity_main);
  12. Button button = (Button) findViewById(R.id.button);
  13. button.setOnClickListener(new View.OnClickListener()
  14. {
  15. @Override
  16. public void onClick(View v){
  17. Toast toast = Toast.makeText(MainActivity.this,"20155225王高源", Toast.LENGTH_LONG);
  18. toast.show();
  19. }
  20. });
  21. }
  22. }
  • 运行截图:

  • 任务四:

  • 修改布局让P290页的界面与教材不同

  • activity_main.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. xmlns:app="http://schemas.android.com/apk/res-auto"
  4. xmlns:tools="http://schemas.android.com/tools"
  5. android:layout_width="match_parent"
  6. android:layout_height="match_parent"
  7. tools:context="com.example.a1.relativelayout.MainActivity">
  8. <Button
  9. android:id="@+id/button"
  10. android:layout_width="wrap_content"
  11. android:layout_height="wrap_content"
  12. android:text="Cancel"
  13. app:layout_constraintLeft_toLeftOf="parent"
  14. android:layout_marginLeft="8dp"
  15. android:layout_marginRight="8dp"
  16. app:layout_constraintRight_toRightOf="parent"
  17. app:layout_constraintTop_toTopOf="parent"
  18. android:layout_marginTop="16dp"
  19. app:layout_constraintHorizontal_bias="0.932" />
  20. <Button
  21. android:id="@+id/button2"
  22. android:layout_width="wrap_content"
  23. android:layout_height="wrap_content"
  24. android:text="Save"
  25. android:layout_marginRight="8dp"
  26. android:layout_marginLeft="8dp"
  27. app:layout_constraintLeft_toLeftOf="parent"
  28. app:layout_constraintRight_toLeftOf="@+id/button"
  29. app:layout_constraintTop_toTopOf="parent"
  30. android:layout_marginTop="16dp"
  31. app:layout_constraintHorizontal_bias="0.151" />
  32. <ImageView
  33. android:id="@+id/imageView"
  34. android:layout_width="96dp"
  35. android:layout_height="84dp"
  36. app:srcCompat="@android:drawable/presence_audio_online"
  37. android:layout_marginRight="8dp"
  38. app:layout_constraintRight_toRightOf="parent"
  39. android:layout_marginLeft="8dp"
  40. app:layout_constraintLeft_toLeftOf="parent"
  41. app:layout_constraintBottom_toBottomOf="parent"
  42. android:layout_marginBottom="46dp" />
  43. <Button
  44. android:id="@+id/button3"
  45. android:layout_width="wrap_content"
  46. android:layout_height="wrap_content"
  47. android:text="Share"
  48. android:layout_marginBottom="8dp"
  49. app:layout_constraintBottom_toTopOf="@+id/imageView"
  50. app:layout_constraintTop_toTopOf="parent"
  51. android:layout_marginTop="8dp"
  52. android:layout_marginRight="8dp"
  53. app:layout_constraintVertical_bias="0.501"
  54. app:layout_constraintRight_toRightOf="parent"
  55. android:layout_marginLeft="8dp"
  56. app:layout_constraintLeft_toLeftOf="parent" />
  57. <Button
  58. android:id="@+id/button4"
  59. android:layout_width="wrap_content"
  60. android:layout_height="wrap_content"
  61. android:text="Delete"
  62. app:layout_constraintRight_toLeftOf="@+id/button5"
  63. android:layout_marginRight="8dp"
  64. android:layout_marginLeft="8dp"
  65. app:layout_constraintLeft_toLeftOf="parent"
  66. app:layout_constraintHorizontal_bias="0.139"
  67. android:layout_marginTop="55dp"
  68. app:layout_constraintTop_toBottomOf="@+id/button2"
  69. app:layout_constraintBottom_toBottomOf="parent"
  70. android:layout_marginBottom="8dp" />
  71. <Button
  72. android:id="@+id/button5"
  73. android:layout_width="wrap_content"
  74. android:layout_height="wrap_content"
  75. android:text="Filter"
  76. android:layout_marginRight="27dp"
  77. app:layout_constraintRight_toRightOf="parent"
  78. android:layout_marginTop="55dp"
  79. app:layout_constraintTop_toBottomOf="@+id/button"
  80. app:layout_constraintBottom_toBottomOf="parent"
  81. android:layout_marginBottom="8dp" />
  82. </android.support.constraint.ConstraintLayout>
  • 运行截图:

  • 任务五:

  • 运行教材本章相关代码并截图

  • MainActivity.java

  1. package com.example.a1.multicolorclock;
  2. import android.os.Bundle;
  3. import android.app.Activity;
  4. import android.view.Menu;
  5. import android.view.View;
  6. import android.graphics.Color;
  7. public class MainActivity extends Activity {
  8. int counter = 0;
  9. int[] colors = { Color.BLACK, Color.BLUE, Color.CYAN,
  10. Color.DKGRAY, Color.GRAY, Color.GREEN, Color.LTGRAY,
  11. Color.MAGENTA, Color.RED, Color.WHITE, Color.YELLOW };
  12. @Override
  13. protected void onCreate(Bundle savedInstanceState) {
  14. super.onCreate(savedInstanceState);
  15. setContentView(R.layout.activity_main);
  16. }
  17. @Override
  18. public boolean onCreateOptionsMenu(Menu menu) {
  19. getMenuInflater().inflate(R.menu.menu_main, menu);
  20. return true;
  21. }
  22. public void changeColor(View view) {
  23. if (counter == colors.length) {
  24. counter = 0;
  25. }
  26. view.setBackgroundColor(colors[counter++]);
  27. }
  28. }

运行截图:

PSP(Personal Software Process)时间:

步骤 耗时 百分比
功能实现 55min 12.5%
测试 25min 15.6%
分析总结 20min 12.5%

实验四 Android程序设计的更多相关文章

  1. 实验四 Android程序设计 实验报告

    实验四 Android程序设计 实验报告 目录 代码托管地址 Android程序设计-1 Android程序设计-2 Android程序设计-3 Android程序设计-4 Android程序设计-5 ...

  2. 第十四周实验报告:实验四 Android程序设计

    20162317袁逸灏 第十四周实验报告:实验四 Android程序设计 实验内容 Android Studio 实验要求 学会使用Android Studio 学习 活动 以及相关知识内容 学习 U ...

  3. 20165235实验四 Android程序设计

    20165235实验四 Android程序设计 实验课程:JAVA编程设计 实验名称:Android开发 姓名:祁瑛 学号:20165235 实验时间:2018.05.16 指导老师:娄家鹏 Andr ...

  4. 20165220Java实验四 Android程序设计

    一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:葛宇豪 学号:20165220 指导教师:娄嘉鹏 实验日期:2018年5月14日 实验时间:13:45 - 15:25 实验序号:实验 ...

  5. 20172328《程序设计与数据结构》实验四 Android程序设计报告

    20172328<程序设计与数据结构>实验四 Android程序设计报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 李馨雨 学号:20172328 实验教师:王志 ...

  6. 20172302《程序设计与数据结构》实验四Android程序设计实验报告

    课程:<程序设计与数据结构> 班级: 1723 姓名: 侯泽洋 学号:20172302 实验教师:王志强老师 实验日期:2018年5月30日 必修/选修: 必修 1.实验内容 (1)And ...

  7. 20165236 实验四 Android程序设计

    20165236  实验四 Android程序设计 一.实验报告 课程:Java程序设计          班级:1652班 姓名:郭金涛       学号:20165236 指导教师:娄嘉鹏  实验 ...

  8. 20165205 2017-2018-2 《Java程序设计》实验四 Android程序设计

    20165205 2017-2018-2 <Java程序设计>实验四 Android程序设计 实验内容 实验四 Android程序设计-1 Android Stuidio的安装测试: 参考 ...

  9. 20155205 《Java程序设计》实验四 Android程序设计

    20155205 <Java程序设计>实验四 Android程序设计 一.实验内容及步骤 (一) Android Stuidio的安装测试 参考<Java和Android开发学习指南 ...

随机推荐

  1. Excel中substitute替换函数的使用方法

    问题现象:在Excel中,对几千条数据按照时间顺序排序,但总是有部分数据不参与排序,单纯用单元格调整不起任何作用. 解决办法: 数据排列问题最重要的是数据格式的一致性.解决这个问题,建议按如下步骤: ...

  2. 十分钟学会Charles抓包(iOS的http/https请求)

    ### 原文地址,感谢作者 : http://www.jianshu.com/p/5539599c7a25 Charles安装 HTTP抓包 HTTPS抓包 1. Charles安装 官网下载安装Ch ...

  3. PHP最全笔记(二)(值得收藏,不时翻看一下)

    /* [goto]5.3+ 版本 */用来跳转到程序中的某一指定位置该目标位置可以用目标名称 加上冒号来标记.PHP中的goto有一定限制,只能在同一个文件和作用域中跳转,    也就是说你无法跳出一 ...

  4. Solr学习笔记——查询

    1.进入Solr管理界面http://localhost:8983/solr/ 可以看到Query中有若干的参数,其意义如下(参考:http://www.jianshu.com/p/3c4cae5de ...

  5. [IR] Search Server - Sphinx

    使用 Sphinx 更好地进行 MySQL 搜索 - IBM 尽管 MySQL 是一个出色的通用数据库,但是如果您的应用程序需要进行大量搜索,那么使用 Sphinx 可获得更好的性能. 尽管 Sphi ...

  6. vue封装第三方插件并发布到npm

    前言 写此文前特意google了一下,因为有较详细的开发教程我再写意义不大,有把插件封装成组件的教程,有把自己的组件封住成插件的教程,本文主要说明如何把第三方的插件封装成vue插件,简化配置,一键安装 ...

  7. Google Colab 免费GPU服务器使用教程

    Google免费GPU使用教程(亲测可用)   今天突然看到一篇推文,里面讲解了如何薅资本主义羊毛,即如何免费使用Google免费提供的GPU使用权. 可以免费使用的方式就是通过Google Cola ...

  8. HandlerSocket介绍

    HandlerSocket的原理 HandlerSocket的应用场景: MySQL自身的局限性,很多站点都采用了MySQL+Memcached的经典架构,甚至一些网站放弃MySQL而采用NoSQL产 ...

  9. 5.STM32通用定时器TIM3中断

    1.通用定时器TIM3中断 #include "timer.h" #include "led.h" void TIM3_Int_Init(u16 arr,u16 ...

  10. 拦截$.ajax方法实现登录过期登录

    jQuery(function ($) { var CreateLoginWindows = function (callback) { var h = 300; $('#CreateLoginWin ...