这几天一直都在整理我们之前的内容,检查会不会有细节问题。例如界面跳转、颜色等。

因为一直没办法找到guitub存放位置。于是在这里存放一些主代码。

MainActivity.java

  1. package com.example.brdemo;
  2.  
  3. import android.app.Activity;
  4. import android.content.Intent;
  5. import android.database.Cursor;
  6. import android.database.sqlite.SQLiteDatabase;
  7. import android.database.sqlite.SQLiteException;
  8. import android.net.Uri;
  9. import android.os.Bundle;
  10. import android.support.v4.widget.CursorAdapter;
  11. import android.support.v4.widget.SimpleCursorAdapter;
  12. import android.view.Menu;
  13. import android.view.MenuInflater;
  14. import android.view.View;
  15. import android.view.View.OnClickListener;
  16. import android.widget.Button;
  17. import android.widget.EditText;
  18. import android.widget.Toast;
  19.  
  20. public class MainActivity extends Activity {
  21. private Button btn1,btn2,btn3;
  22. private EditText edname,edsecret;
  23. Intent iguangs, iches;
  24. SQLiteDatabase db;
  25.  
  26. @Override
  27. protected void onCreate(Bundle savedInstanceState) {
  28. super.onCreate(savedInstanceState);
  29. setContentView(R.layout.activity_main);
  30.  
  31. btn1 = (Button) findViewById(R.id.b1);// 注册
  32. btn2 = (Button) findViewById(R.id.bt3);// 测试
  33. btn3 = (Button) findViewById(R.id.b2);// 登录
  34.  
  35. edname = (EditText) findViewById(R.id.editname);
  36. edsecret = (EditText) findViewById(R.id.editsecret);
  37.  
  38. db=SQLiteDatabase.openOrCreateDatabase(this.getFilesDir().toString()+"/mydb.db3", null);
  39. // 注册
  40. btn1.setOnClickListener(new OnClickListener() {
  41.  
  42. @Override
  43. public void onClick(View arg0) {
  44. String title,content;
  45. title=edname.getText().toString();
  46. content=edsecret.getText().toString();
  47. try {
  48. insertData(db, title, content);
  49. Cursor cursor=db.rawQuery("select * from myTable", null);
  50. inflateList(cursor);
  51. } catch (SQLiteException e) {
  52. // TODO: handle exception
  53. db.execSQL("create table myTable(_id integer"
  54. +"primary key autonicrement,"
  55. +"title varchar(50),"
  56. + "content varchar(255))");
  57. insertData(db, title, content);
  58. Cursor cursor=db.rawQuery("select * from myTable", null);
  59. inflateList(cursor);
  60. }
  61. Toast.makeText(MainActivity.this, "用户"+edname.getText() +"注册成功", Toast.LENGTH_LONG).show();
  62. iguangs = new Intent();
  63. Bundle bundle = new Bundle();
  64. iguangs.setClass(MainActivity.this, H.class);
  65. bundle.putString("userName", edname.getText().toString());
  66. bundle.putString("phoneNum", edsecret.getText().toString());
  67. iguangs.putExtras(bundle);
  68. // 启动Activity
  69. startActivity(iguangs);
  70.  
  71. }
  72.  
  73. private void inflateList(Cursor cursor) {
  74. // TODO Auto-generated method stub
  75.  
  76. }
  77.  
  78. private void insertData(SQLiteDatabase db, String title,
  79. String content) {
  80. // TODO Auto-generated method stub
  81.  
  82. }
  83. });
  84. // 测试
  85. btn2.setOnClickListener(new OnClickListener() {
  86.  
  87. @Override
  88. public void onClick(View arg0) {
  89. // TODO Auto-generated method stub
  90. Uri uri = Uri.parse("http://open.taobao.com");
  91. iches = new Intent(Intent.ACTION_VIEW, uri);
  92. startActivity(iches);
  93. }
  94. });
  95. // 登录
  96. btn3.setOnClickListener(new OnClickListener() {
  97.  
  98. @Override
  99. public void onClick(View arg0) {
  100. iguangs = new Intent();
  101. Bundle bundle = new Bundle();
  102. iguangs.setClass(MainActivity.this, H.class);
  103. bundle.putString("userName", edname.getText().toString());
  104. bundle.putString("phoneNum", edsecret.getText().toString());
  105.  
  106. Toast.makeText(MainActivity.this, "用户"+edname.getText() +"登录成功", Toast.LENGTH_LONG).show();
  107. iguangs.putExtras(bundle);
  108. // 启动Activity
  109. startActivity(iguangs);
  110.  
  111. }
  112. });
  113.  
  114. }
  115.  
  116. @Override
  117. public boolean onCreateOptionsMenu(Menu menu) {
  118. // TODO Auto-generated method stub
  119. MenuInflater inflater = new MenuInflater(this);
  120. inflater.inflate(R.menu.main, menu);
  121. return super.onCreateOptionsMenu(menu);
  122. }
  123.  
  124. private void insertData(SQLiteDatabase db,String title,String content) {
  125. db.execSQL("insert into myTable values(null,?,?)",new String[]{title,content});
  126. }
  127.  
  128. private void inflateList(Cursor cursor) {
  129. SimpleCursorAdapter simpleCursorAdapter=new SimpleCursorAdapter(MainActivity.this,
  130. R.layout.activity_main, cursor, new String[]{"title","content"},
  131. new int[]{R.id.editname,R.id.editsecret}, CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER);
  132.  
  133. }
  134. @Override
  135. protected void onDestroy() {
  136. // TODO Auto-generated method stub
  137. super.onDestroy();
  138. if (db!=null &&db.isOpen()) {
  139. db.close();
  140. }
  141. }
  142. }

CheckActivity.java(四则运算的核心算法)

  1. package com.example.brdemo;
  2.  
  3. import java.util.Random;
  4.  
  5. import android.app.ActionBar;
  6. import android.app.Activity;
  7. import android.content.Context;
  8. import android.content.Intent;
  9. import android.media.AudioManager;
  10. import android.os.Bundle;
  11. import android.view.MenuItem;
  12. import android.view.View;
  13. import android.widget.Button;
  14. import android.widget.EditText;
  15. import android.widget.TextView;
  16.  
  17. public class CheckActivity extends Activity {
  18. public Button btn1, btn2;// 开始答题,退出
  19. public Button btnbof, btnzant, btg, btd;// 播放,退出,高音量,低音量
  20. private AudioManager am;// 音量调节定义
  21. private EditText et1;
  22. private EditText et2;
  23. long startTime;
  24. long endTime;
  25. private TextView t11;
  26. private TextView t4;
  27. private TextView t2;
  28. private TextView t3;
  29. private TextView t1;
  30. private TextView t5;
  31. private TextView t6;
  32. int ranswer = 0;
  33. int uanswer = 0;
  34. String str = "";
  35. String z = "";
  36. private boolean stop = false;
  37. public int num = 5, T = 0, F = 0, count = 1, b = 0;
  38.  
  39. @Override
  40. protected void onCreate(Bundle savedInstanceState) {
  41. super.onCreate(savedInstanceState);
  42. setContentView(R.layout.szys);
  43. am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
  44. // 最大音量
  45. int maxVolume = am.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
  46. // 当前音量
  47. int currentVolume = am.getStreamVolume(AudioManager.STREAM_MUSIC);
  48.  
  49. btn1 = (Button) findViewById(R.id.bb1);// 开始答题
  50. btn2 = (Button) findViewById(R.id.bb2);// 退出
  51.  
  52. et2 = (EditText) findViewById(R.id.editText2);
  53. et1 = (EditText) findViewById(R.id.editText1);
  54. t11 = (TextView) findViewById(R.id.t11);
  55. t4 = (TextView) findViewById(R.id.textView4);
  56. t6 = (TextView) findViewById(R.id.textView6);
  57. t2 = (TextView) findViewById(R.id.textView12);
  58. t5 = (TextView) findViewById(R.id.textView10);
  59. t3 = (TextView) findViewById(R.id.textView7);
  60. t1 = (TextView) findViewById(R.id.textView14);
  61.  
  62. ActionBar actionBar = getActionBar();// 获取ActionBar对象
  63. actionBar.setDisplayShowHomeEnabled(true);// 显示应用程序图标
  64. actionBar.setDisplayHomeAsUpEnabled(true);// 将应用程序图标转变为可点击图标,并添加一个返回箭头。
  65.  
  66. // 播放按钮
  67. btnbof = (Button) findViewById(R.id.btstart);
  68. btnbof.setOnClickListener(new View.OnClickListener() {
  69.  
  70. @Override
  71. public void onClick(View arg0) {
  72. // TODO Auto-generated method stub
  73. startService(new Intent(CheckActivity.this, MyService.class));
  74. }
  75. });
  76. // 暂停按钮
  77. btnzant = (Button) findViewById(R.id.btstop);
  78. btnzant.setOnClickListener(new View.OnClickListener() {
  79.  
  80. @Override
  81. public void onClick(View arg0) {
  82. // TODO Auto-generated method stub
  83. stopService(new Intent(CheckActivity.this, MyService.class));
  84. }
  85. });
  86. // 高音量
  87. btg = (Button) findViewById(R.id.btgao);
  88. btg.setOnClickListener(new View.OnClickListener() {
  89.  
  90. @Override
  91. public void onClick(View arg0) {
  92. // TODO Auto-generated method stub
  93. am.adjustStreamVolume(AudioManager.STREAM_MUSIC,
  94. AudioManager.ADJUST_RAISE,
  95. AudioManager.FX_FOCUS_NAVIGATION_UP);
  96. }
  97. });
  98. // 低音量
  99. btd = (Button) findViewById(R.id.btdi);
  100. btd.setOnClickListener(new View.OnClickListener() {
  101.  
  102. @Override
  103. public void onClick(View arg0) {
  104. // TODO Auto-generated method stub
  105. am.adjustStreamVolume(AudioManager.STREAM_MUSIC,
  106. AudioManager.ADJUST_LOWER,
  107. AudioManager.FX_FOCUS_NAVIGATION_UP);
  108. }
  109. });
  110. btn1.setOnClickListener(new View.OnClickListener() {
  111. @Override
  112. public void onClick(View arg0) {
  113. CheckActivity.this.finish();
  114.  
  115. }
  116. });
  117.  
  118. btn2.setOnClickListener(new View.OnClickListener() {
  119.  
  120. @Override
  121. public void onClick(View arg0) {
  122. // TODO Auto-generated method stub
  123. CheckActivity.this.finish();
  124. }
  125. });
  126. // 开始答题
  127. btn1.setOnClickListener(new View.OnClickListener() {
  128.  
  129. @Override
  130. public void onClick(View arg0) {
  131.  
  132. T = 0;
  133. F = 0;
  134. str = "";
  135. z = "";
  136. stop = false;
  137.  
  138. try {
  139. String bb = et1.getText().toString();
  140. num = Integer.parseInt(bb);
  141. if (num > 15) {
  142.  
  143. t11.setText("输入题数错误,请重新输入!(1-15)");
  144. et1.setText("");
  145. } else {
  146. startTime = System.currentTimeMillis();
  147. t4.setText("" + T);
  148. t2.setText("" + F);
  149. t1.setText("" + b);
  150. // btn.setVisible(false);
  151. // et1.setEditable(false);
  152.  
  153. showtext();
  154.  
  155. }
  156.  
  157. } catch (NumberFormatException e1) {
  158. t11.setText("输入题数错误,请重新输入!(1~15)");
  159. et1.setText("");
  160. }
  161.  
  162. }
  163.  
  164. });
  165.  
  166. et2.setOnClickListener(new View.OnClickListener() {
  167.  
  168. @Override
  169. public void onClick(View arg0) {
  170.  
  171. try {
  172. if (!stop) {
  173.  
  174. String tt = et2.getText().toString();
  175. uanswer = Integer.parseInt(tt);
  176. ;
  177. if (num == count) {
  178. if (uanswer == ranswer) {
  179. t4.setText("" + ranswer);
  180. t3.setText("答对!");
  181.  
  182. T++;
  183. t6.setText("" + T);
  184. b = (100 / num) * T;
  185. t1.setText("" + b);
  186.  
  187. if (b > 90) {
  188. Intent intent = new Intent();
  189. intent.setClass(CheckActivity.this,
  190. Test1.class);
  191. startActivity(intent);
  192. CheckActivity.this.finish();
  193.  
  194. }
  195. count++;
  196. } else {
  197. t4.setText("" + ranswer);
  198. t3.setText("答错!");
  199. F++;
  200. t2.setText("" + F);
  201. count++;
  202. }
  203. stop = true;
  204. t3.setText(" 答題結束!");
  205. endTime = System.currentTimeMillis();
  206. // et2.setEditable(true);
  207. // btn.setVisible(true);
  208. t5.setText((endTime - startTime) / 1000 + "s");
  209.  
  210. }
  211.  
  212. else if (uanswer == ranswer) {
  213. t4.setText("" + ranswer);
  214. t3.setText("答对!");
  215.  
  216. T++;
  217. t6.setText("" + T);
  218. b = (100 / num) * T;
  219. t1.setText("" + b);
  220. showtext();
  221. if (b > 90) {
  222. Intent intent = new Intent();
  223. intent.setClass(CheckActivity.this, Test1.class);
  224. startActivity(intent);
  225. CheckActivity.this.finish();
  226.  
  227. }
  228. count++;
  229.  
  230. } else {
  231. t4.setText("" + ranswer);
  232. t3.setText("答错!");
  233. F++;
  234. t2.setText("" + F);
  235. showtext();
  236. count++;
  237. }
  238. }
  239. }
  240.  
  241. catch (NumberFormatException e2) {
  242. t11.setText(str + "答案格式错误,请重新输入答案!");
  243. et2.setText("");
  244. }
  245.  
  246. }
  247. });
  248. }
  249.  
  250. void showtext() {
  251. char op = '+';
  252. int a = 0, b = 0, c = 0, e = 0, f = 0, opnum = 0, chioce = 0;
  253. int temp = 0;
  254. Random ra = new Random();
  255. e = ra.nextInt(10) + 1;
  256. f = ra.nextInt(10) + 1;
  257. chioce = ra.nextInt(2) + 1;
  258. if (e % 2 == 0) {
  259. a = ra.nextInt(10) + 2;
  260. } else {
  261. a = -ra.nextInt(10) + 2;
  262. }
  263. if (f % 2 == 0) {
  264. b = ra.nextInt(10) + 2;
  265. } else {
  266. b = -ra.nextInt(10) + 2;
  267. }
  268. c = ra.nextInt(5);
  269. opnum = Math.abs(ra.nextInt()) % 4 + 1;
  270. et2.setText("");
  271. switch (chioce) {
  272. case 1: {
  273. switch (opnum) {
  274. case 1:
  275. op = '+';
  276. break;
  277. case 2:
  278. op = '-';
  279. break;
  280. case 3:
  281. op = '*';
  282. break;
  283. case 4:
  284. op = '/';
  285. break;
  286. }
  287.  
  288. if ((op == '-') && (a < b)) {
  289. temp = a;
  290. a = b;
  291. b = temp;
  292. }
  293.  
  294. if (op == '/') {
  295. if (b == 0) {
  296. b = 1;
  297. }
  298. a = a * b;
  299. }
  300. if (a > 0 && b > 0) {
  301. z = String.valueOf(a) + String.valueOf(op) + String.valueOf(b)
  302. + "=" + "\n";
  303. } else if (a < 0 && b > 0) {
  304. z = "(" + String.valueOf(a) + ")" + String.valueOf(op)
  305. + String.valueOf(b) + "=" + "\n";
  306. } else if (a > 0 && b < 0) {
  307. z = String.valueOf(a) + String.valueOf(op) + "("
  308. + String.valueOf(b) + ")" + "=" + "\n";
  309. } else {
  310. z = "(" + String.valueOf(a) + ")" + String.valueOf(op) + "("
  311. + String.valueOf(b) + ")" + "=" + "\n";
  312. }
  313. str = str + z;
  314. t11.setText(str);
  315.  
  316. switch (op) {
  317. case '+':
  318. ranswer = a + b;
  319. break;
  320. case '-':
  321. ranswer = a - b;
  322. break;
  323. case '*':
  324. ranswer = a * b;
  325. break;
  326. case '/':
  327. ranswer = a / b;
  328. break;
  329. }
  330. break;
  331. }
  332. case 2: {
  333. int jc = 1;
  334. str = str + String.valueOf(c) + "!=" + "\n";
  335. t11.setText(str);
  336. for (int i = c; i > 0; i--) {
  337. jc = jc * i;
  338. }
  339. ranswer = jc;
  340. break;
  341. }
  342. }
  343.  
  344. }
  345.  
  346. // 返回主菜单
  347. @Override
  348. public boolean onOptionsItemSelected(MenuItem item) {
  349. // TODO Auto-generated method stub
  350. switch (item.getItemId()) {
  351. case android.R.id.home:
  352. // 创建启动MainActivity的Intent
  353. Intent intent = new Intent();
  354. intent.setClass(this, H.class);
  355. // 添加额外的Flag,将Activity栈中处于MainActivity之上的Activity弹出
  356. intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
  357. startActivity(intent);
  358. CheckActivity.this.finish();
  359. break;
  360.  
  361. default:
  362. break;
  363. }
  364. return super.onOptionsItemSelected(item);
  365. }
  366. }

MyService.java(音乐的播放)

  1. package com.example.brdemo;
  2.  
  3. import android.app.Service;
  4. import android.content.Intent;
  5. import android.media.MediaPlayer;
  6. import android.os.IBinder;
  7. import android.util.Log;
  8.  
  9. public class MyService extends Service {
  10. //系统使用MediaPlayer播放音乐,定义对象mp
  11. private MediaPlayer mey;
  12. private String TAG="Main";
  13. @Override
  14. public IBinder onBind(Intent intent) {
  15. // TODO Auto-generated method stub
  16. return null;
  17. }
  18. @Override
  19. public void onCreate() {
  20. super.onCreate();
  21. //初始化MediaPlayer对象,准备播放音乐,音乐文件放在文件夹/res/raw中
  22. mey = MediaPlayer.create(MyService.this, R.raw.zhou);
  23. Intent intent = new Intent();
  24. intent.putExtra("control", 1);
  25. sendBroadcast(intent);
  26. mey.start();
  27. Log.i(TAG, "MusicService onCreate被运行");
  28. }
  29.  
  30. @Override
  31. public int onStartCommand(Intent intent, int flags, int startId) {
  32. // TODO Auto-generated method stub
  33. //开始播放音乐
  34. mey.start();
  35. Log.i(TAG, "MusicService onStartCommand被运行");
  36. return super.onStartCommand(intent, flags, startId);
  37.  
  38. }
  39.  
  40. @Override
  41. public void onDestroy() {
  42. super.onDestroy();
  43. //停止播放音乐
  44. mey.stop();
  45. Log.i(TAG, "MusicService onDestroy被运行");
  46. }
  47.  
  48. }

Sprint 冲刺第三阶段第6-10天的更多相关文章

  1. Sprint 冲刺第三阶段第二天

    陈汝婷:播放音乐 1:做播放音乐这个功能时开始没有考虑周全,使用 PS P出来的图竟然没有用上,耗时耗人工.吃一见长一智,以后要考虑周全.还要耗了那么久,音乐的初效果终于出来了. 2:昨天出现的问题, ...

  2. Sprint 冲刺第三阶段第3-5天 数据库代码

    数据库代码: package com.example.brdemo; import android.app.Activity; import android.content.Intent; impor ...

  3. Sprint 冲刺第三阶段第3-5天

    陈汝婷:数据库的实现 具体实现用户登录在数据库中查找,用户注册的时候可以将用户的具体信息存放于SD卡中.刚学Android的数据库的数据库,还有一些问题.所以这个问题一直拖了几天才解决.问老师问同学, ...

  4. Sprint 冲刺第三阶段第一天

    1.今晚我在整理之前的代码,检查细节,然后发现游戏要返回上一界面竟然出现了问题“项目停止运行”,仔细检查没办法解决,后来百度可能是因为修改了之前文件的名字,可在AndroidManifest.xml中 ...

  5. 第三个sprint冲刺第三阶段

    公测版:

  6. Bete冲刺第三阶段

    Bete冲刺第三阶段 今日工作: web: 检索了各类资料,今日暂时顺利解决了hibernate懒加载异常的问题,采用的凡是也比较简单就是添加了一个OpenSessionInViewFilter的过滤 ...

  7. 第三个Sprint冲刺第三天

    讨论地点:宿舍 讨论成员:邵家文.李新.朱浩龙.陈俊金 讨论问题:增强了界面的效果,改善了视角

  8. 第二个Sprint冲刺第三天

    讨论地点:宿舍 讨论成员:邵家文.李新.朱浩龙.陈俊金 燃尽图: 待解决的问题: 需要将主界面重新布局,下面的是原始主界面: 想实现一个统计的功能,今天就完成了一个基本的布局: 开发感悟:爱在何方

  9. 第一个Sprint冲刺第三天

    讨论成员:邵家文.李新.朱浩龙.陈俊金 讨论问题:如何将新学的技术应用于四则运算项目中 讨论地点:宿舍 进展:跟预期相差不远

随机推荐

  1. JDK动态代理源码解析

    动态代理.静态代理优缺点     关于JDK的动态代理,最为人熟知的可能要数Spring AOP的实现,默认情况下,Spring AOP的实现对于接口来说就是使用的JDK的动态代理来实现的,而对于类的 ...

  2. Python程序的编写方式

    直接在Python的交互式环境编写代码 现在,了解了如何启动和退出Python的交互式环境,我们就可以正式开始编写Python代码了. 在写代码之前,请千万不要用“复制”-“粘贴”把代码从页面粘贴到你 ...

  3. 关于一台机器部署多个tomcat的小记

    一台机器部署多个tomcat在很多时候都是有可能的,比如说多个tomcat配合nginx负载更可能好的利用CPU,或者更新程序时做主备切换等. 1.直接下载或者复制一个已有的tomcat,第一个tom ...

  4. php 对象教程

    [PHP面向对象(OOP)编程入门教程]6.如何去使用对象中的成员 作者:qianyunlai.com  发布于:2012-05-19 15:02  分类:PHP基础  浏览(280) 上面看到PHP ...

  5. 项目Alpha冲刺(团队)-第六天冲刺

    格式描述 课程名称:软件工程1916|W(福州大学) 作业要求:项目Alpha冲刺(团队)-代码规范.冲刺任务与计划 团队名称:为了交项目干杯 作业目标:描述第六天冲刺的项目进展.问题困难.心得体会 ...

  6. Linux系统学习之字符处理

    管道 管道是一种使用非常频繁的通信机制,我们可以使用管道符"|"来连接进程,由管道连接起来订单进程可以自动运行,如同有一个数据流一样,所以管道表现为输入输出重定向的一种方法,它可以 ...

  7. PAT A1118 Birds in Forest (25 分)——并查集

    Some scientists took pictures of thousands of birds in a forest. Assume that all the birds appear in ...

  8. Java:内省(Introspector)

    内省(Introspector) 是Java 语言对 JavaBean 类属性.事件的一种缺省处理方法. JavaBean是一种特殊的类,主要用于传递数据信息,这种类中的方法主要用于访问私有的字段,且 ...

  9. 【小程序】模拟数据支持(mockjs配置模拟服务器接口数据)

    utils目录 ①下载mockjs(地址)放置utils目录中 ②新建api.js :配置模拟数据以及后台接口,通过DEBUG=ture;  //切换数据接口 配置如下: let API_HOST = ...

  10. C#实现一张塔松叶

    前段时间,Insus.NET有实现一组字符串在输出时,靠左或靠右对齐.<输出的字符靠右对齐>http://www.cnblogs.com/insus/p/7953304.html 现在In ...