Sprint 冲刺第三阶段第6-10天
这几天一直都在整理我们之前的内容,检查会不会有细节问题。例如界面跳转、颜色等。
因为一直没办法找到guitub存放位置。于是在这里存放一些主代码。
MainActivity.java
package com.example.brdemo; import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteException;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.widget.CursorAdapter;
import android.support.v4.widget.SimpleCursorAdapter;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast; public class MainActivity extends Activity {
private Button btn1,btn2,btn3;
private EditText edname,edsecret;
Intent iguangs, iches;
SQLiteDatabase db; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); btn1 = (Button) findViewById(R.id.b1);// 注册
btn2 = (Button) findViewById(R.id.bt3);// 测试
btn3 = (Button) findViewById(R.id.b2);// 登录 edname = (EditText) findViewById(R.id.editname);
edsecret = (EditText) findViewById(R.id.editsecret); db=SQLiteDatabase.openOrCreateDatabase(this.getFilesDir().toString()+"/mydb.db3", null);
// 注册
btn1.setOnClickListener(new OnClickListener() { @Override
public void onClick(View arg0) {
String title,content;
title=edname.getText().toString();
content=edsecret.getText().toString();
try {
insertData(db, title, content);
Cursor cursor=db.rawQuery("select * from myTable", null);
inflateList(cursor);
} catch (SQLiteException e) {
// TODO: handle exception
db.execSQL("create table myTable(_id integer"
+"primary key autonicrement,"
+"title varchar(50),"
+ "content varchar(255))");
insertData(db, title, content);
Cursor cursor=db.rawQuery("select * from myTable", null);
inflateList(cursor);
}
Toast.makeText(MainActivity.this, "用户"+edname.getText() +"注册成功", Toast.LENGTH_LONG).show();
iguangs = new Intent();
Bundle bundle = new Bundle();
iguangs.setClass(MainActivity.this, H.class);
bundle.putString("userName", edname.getText().toString());
bundle.putString("phoneNum", edsecret.getText().toString());
iguangs.putExtras(bundle);
// 启动Activity
startActivity(iguangs); } private void inflateList(Cursor cursor) {
// TODO Auto-generated method stub } private void insertData(SQLiteDatabase db, String title,
String content) {
// TODO Auto-generated method stub }
});
// 测试
btn2.setOnClickListener(new OnClickListener() { @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Uri uri = Uri.parse("http://open.taobao.com");
iches = new Intent(Intent.ACTION_VIEW, uri);
startActivity(iches);
}
});
// 登录
btn3.setOnClickListener(new OnClickListener() { @Override
public void onClick(View arg0) {
iguangs = new Intent();
Bundle bundle = new Bundle();
iguangs.setClass(MainActivity.this, H.class);
bundle.putString("userName", edname.getText().toString());
bundle.putString("phoneNum", edsecret.getText().toString()); Toast.makeText(MainActivity.this, "用户"+edname.getText() +"登录成功", Toast.LENGTH_LONG).show();
iguangs.putExtras(bundle);
// 启动Activity
startActivity(iguangs); }
}); } @Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
MenuInflater inflater = new MenuInflater(this);
inflater.inflate(R.menu.main, menu);
return super.onCreateOptionsMenu(menu);
} private void insertData(SQLiteDatabase db,String title,String content) {
db.execSQL("insert into myTable values(null,?,?)",new String[]{title,content});
} private void inflateList(Cursor cursor) {
SimpleCursorAdapter simpleCursorAdapter=new SimpleCursorAdapter(MainActivity.this,
R.layout.activity_main, cursor, new String[]{"title","content"},
new int[]{R.id.editname,R.id.editsecret}, CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER); }
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
if (db!=null &&db.isOpen()) {
db.close();
}
}
}
CheckActivity.java(四则运算的核心算法)
package com.example.brdemo; import java.util.Random; import android.app.ActionBar;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.media.AudioManager;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView; public class CheckActivity extends Activity {
public Button btn1, btn2;// 开始答题,退出
public Button btnbof, btnzant, btg, btd;// 播放,退出,高音量,低音量
private AudioManager am;// 音量调节定义
private EditText et1;
private EditText et2;
long startTime;
long endTime;
private TextView t11;
private TextView t4;
private TextView t2;
private TextView t3;
private TextView t1;
private TextView t5;
private TextView t6;
int ranswer = 0;
int uanswer = 0;
String str = "";
String z = "";
private boolean stop = false;
public int num = 5, T = 0, F = 0, count = 1, b = 0; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.szys);
am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
// 最大音量
int maxVolume = am.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
// 当前音量
int currentVolume = am.getStreamVolume(AudioManager.STREAM_MUSIC); btn1 = (Button) findViewById(R.id.bb1);// 开始答题
btn2 = (Button) findViewById(R.id.bb2);// 退出 et2 = (EditText) findViewById(R.id.editText2);
et1 = (EditText) findViewById(R.id.editText1);
t11 = (TextView) findViewById(R.id.t11);
t4 = (TextView) findViewById(R.id.textView4);
t6 = (TextView) findViewById(R.id.textView6);
t2 = (TextView) findViewById(R.id.textView12);
t5 = (TextView) findViewById(R.id.textView10);
t3 = (TextView) findViewById(R.id.textView7);
t1 = (TextView) findViewById(R.id.textView14); ActionBar actionBar = getActionBar();// 获取ActionBar对象
actionBar.setDisplayShowHomeEnabled(true);// 显示应用程序图标
actionBar.setDisplayHomeAsUpEnabled(true);// 将应用程序图标转变为可点击图标,并添加一个返回箭头。 // 播放按钮
btnbof = (Button) findViewById(R.id.btstart);
btnbof.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
startService(new Intent(CheckActivity.this, MyService.class));
}
});
// 暂停按钮
btnzant = (Button) findViewById(R.id.btstop);
btnzant.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
stopService(new Intent(CheckActivity.this, MyService.class));
}
});
// 高音量
btg = (Button) findViewById(R.id.btgao);
btg.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
am.adjustStreamVolume(AudioManager.STREAM_MUSIC,
AudioManager.ADJUST_RAISE,
AudioManager.FX_FOCUS_NAVIGATION_UP);
}
});
// 低音量
btd = (Button) findViewById(R.id.btdi);
btd.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
am.adjustStreamVolume(AudioManager.STREAM_MUSIC,
AudioManager.ADJUST_LOWER,
AudioManager.FX_FOCUS_NAVIGATION_UP);
}
});
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
CheckActivity.this.finish(); }
}); btn2.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
CheckActivity.this.finish();
}
});
// 开始答题
btn1.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View arg0) { T = 0;
F = 0;
str = "";
z = "";
stop = false; try {
String bb = et1.getText().toString();
num = Integer.parseInt(bb);
if (num > 15) { t11.setText("输入题数错误,请重新输入!(1-15)");
et1.setText("");
} else {
startTime = System.currentTimeMillis();
t4.setText("" + T);
t2.setText("" + F);
t1.setText("" + b);
// btn.setVisible(false);
// et1.setEditable(false); showtext(); } } catch (NumberFormatException e1) {
t11.setText("输入题数错误,请重新输入!(1~15)");
et1.setText("");
} } }); et2.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View arg0) { try {
if (!stop) { String tt = et2.getText().toString();
uanswer = Integer.parseInt(tt);
;
if (num == count) {
if (uanswer == ranswer) {
t4.setText("" + ranswer);
t3.setText("答对!"); T++;
t6.setText("" + T);
b = (100 / num) * T;
t1.setText("" + b); if (b > 90) {
Intent intent = new Intent();
intent.setClass(CheckActivity.this,
Test1.class);
startActivity(intent);
CheckActivity.this.finish(); }
count++;
} else {
t4.setText("" + ranswer);
t3.setText("答错!");
F++;
t2.setText("" + F);
count++;
}
stop = true;
t3.setText(" 答題結束!");
endTime = System.currentTimeMillis();
// et2.setEditable(true);
// btn.setVisible(true);
t5.setText((endTime - startTime) / 1000 + "s"); } else if (uanswer == ranswer) {
t4.setText("" + ranswer);
t3.setText("答对!"); T++;
t6.setText("" + T);
b = (100 / num) * T;
t1.setText("" + b);
showtext();
if (b > 90) {
Intent intent = new Intent();
intent.setClass(CheckActivity.this, Test1.class);
startActivity(intent);
CheckActivity.this.finish(); }
count++; } else {
t4.setText("" + ranswer);
t3.setText("答错!");
F++;
t2.setText("" + F);
showtext();
count++;
}
}
} catch (NumberFormatException e2) {
t11.setText(str + "答案格式错误,请重新输入答案!");
et2.setText("");
} }
});
} void showtext() {
char op = '+';
int a = 0, b = 0, c = 0, e = 0, f = 0, opnum = 0, chioce = 0;
int temp = 0;
Random ra = new Random();
e = ra.nextInt(10) + 1;
f = ra.nextInt(10) + 1;
chioce = ra.nextInt(2) + 1;
if (e % 2 == 0) {
a = ra.nextInt(10) + 2;
} else {
a = -ra.nextInt(10) + 2;
}
if (f % 2 == 0) {
b = ra.nextInt(10) + 2;
} else {
b = -ra.nextInt(10) + 2;
}
c = ra.nextInt(5);
opnum = Math.abs(ra.nextInt()) % 4 + 1;
et2.setText("");
switch (chioce) {
case 1: {
switch (opnum) {
case 1:
op = '+';
break;
case 2:
op = '-';
break;
case 3:
op = '*';
break;
case 4:
op = '/';
break;
} if ((op == '-') && (a < b)) {
temp = a;
a = b;
b = temp;
} if (op == '/') {
if (b == 0) {
b = 1;
}
a = a * b;
}
if (a > 0 && b > 0) {
z = String.valueOf(a) + String.valueOf(op) + String.valueOf(b)
+ "=" + "\n";
} else if (a < 0 && b > 0) {
z = "(" + String.valueOf(a) + ")" + String.valueOf(op)
+ String.valueOf(b) + "=" + "\n";
} else if (a > 0 && b < 0) {
z = String.valueOf(a) + String.valueOf(op) + "("
+ String.valueOf(b) + ")" + "=" + "\n";
} else {
z = "(" + String.valueOf(a) + ")" + String.valueOf(op) + "("
+ String.valueOf(b) + ")" + "=" + "\n";
}
str = str + z;
t11.setText(str); switch (op) {
case '+':
ranswer = a + b;
break;
case '-':
ranswer = a - b;
break;
case '*':
ranswer = a * b;
break;
case '/':
ranswer = a / b;
break;
}
break;
}
case 2: {
int jc = 1;
str = str + String.valueOf(c) + "!=" + "\n";
t11.setText(str);
for (int i = c; i > 0; i--) {
jc = jc * i;
}
ranswer = jc;
break;
}
} } // 返回主菜单
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch (item.getItemId()) {
case android.R.id.home:
// 创建启动MainActivity的Intent
Intent intent = new Intent();
intent.setClass(this, H.class);
// 添加额外的Flag,将Activity栈中处于MainActivity之上的Activity弹出
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
CheckActivity.this.finish();
break; default:
break;
}
return super.onOptionsItemSelected(item);
}
}
MyService.java(音乐的播放)
package com.example.brdemo; import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.IBinder;
import android.util.Log; public class MyService extends Service {
//系统使用MediaPlayer播放音乐,定义对象mp
private MediaPlayer mey;
private String TAG="Main";
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
@Override
public void onCreate() {
super.onCreate();
//初始化MediaPlayer对象,准备播放音乐,音乐文件放在文件夹/res/raw中
mey = MediaPlayer.create(MyService.this, R.raw.zhou);
Intent intent = new Intent();
intent.putExtra("control", 1);
sendBroadcast(intent);
mey.start();
Log.i(TAG, "MusicService onCreate被运行");
} @Override
public int onStartCommand(Intent intent, int flags, int startId) {
// TODO Auto-generated method stub
//开始播放音乐
mey.start();
Log.i(TAG, "MusicService onStartCommand被运行");
return super.onStartCommand(intent, flags, startId); } @Override
public void onDestroy() {
super.onDestroy();
//停止播放音乐
mey.stop();
Log.i(TAG, "MusicService onDestroy被运行");
} }
Sprint 冲刺第三阶段第6-10天的更多相关文章
- Sprint 冲刺第三阶段第二天
陈汝婷:播放音乐 1:做播放音乐这个功能时开始没有考虑周全,使用 PS P出来的图竟然没有用上,耗时耗人工.吃一见长一智,以后要考虑周全.还要耗了那么久,音乐的初效果终于出来了. 2:昨天出现的问题, ...
- Sprint 冲刺第三阶段第3-5天 数据库代码
数据库代码: package com.example.brdemo; import android.app.Activity; import android.content.Intent; impor ...
- Sprint 冲刺第三阶段第3-5天
陈汝婷:数据库的实现 具体实现用户登录在数据库中查找,用户注册的时候可以将用户的具体信息存放于SD卡中.刚学Android的数据库的数据库,还有一些问题.所以这个问题一直拖了几天才解决.问老师问同学, ...
- Sprint 冲刺第三阶段第一天
1.今晚我在整理之前的代码,检查细节,然后发现游戏要返回上一界面竟然出现了问题“项目停止运行”,仔细检查没办法解决,后来百度可能是因为修改了之前文件的名字,可在AndroidManifest.xml中 ...
- 第三个sprint冲刺第三阶段
公测版:
- Bete冲刺第三阶段
Bete冲刺第三阶段 今日工作: web: 检索了各类资料,今日暂时顺利解决了hibernate懒加载异常的问题,采用的凡是也比较简单就是添加了一个OpenSessionInViewFilter的过滤 ...
- 第三个Sprint冲刺第三天
讨论地点:宿舍 讨论成员:邵家文.李新.朱浩龙.陈俊金 讨论问题:增强了界面的效果,改善了视角
- 第二个Sprint冲刺第三天
讨论地点:宿舍 讨论成员:邵家文.李新.朱浩龙.陈俊金 燃尽图: 待解决的问题: 需要将主界面重新布局,下面的是原始主界面: 想实现一个统计的功能,今天就完成了一个基本的布局: 开发感悟:爱在何方
- 第一个Sprint冲刺第三天
讨论成员:邵家文.李新.朱浩龙.陈俊金 讨论问题:如何将新学的技术应用于四则运算项目中 讨论地点:宿舍 进展:跟预期相差不远
随机推荐
- BZOJ3295:[CQOI2011]动态逆序对(CDQ分治)
Description 对于序列A,它的逆序对数定义为满足i<j,且Ai>Aj的数对(i,j)的个数.给1到n的一个排列,按照某种顺序依次删除m个元素,你的任务是在每次删除一个元素之前统计 ...
- 【转】BAT批处理中的字符串处理详解(字符串截取)
下面对这些功能一一进行讲解. 1.截取字符串 截取字符串可以说是字符串处理功能中最常用的一个子功能了,能够实现截取字符串中的特定位置的一个或多个字符.举例说明其基本功能: @echo off set ...
- 20145203盖泽双 《网络对抗技术》实践1—— MAL_逆向与Bof基础
20145203盖泽双 <网络对抗技术> MAL_逆向与Bof基础 实践目标 (1)我们要通过修改程序代码,使得程序运行其自身中本不该运行的代码片段. (2)在这里,我们有一个名为2014 ...
- 转载 SpringMVC详解(三)------基于注解的入门实例
目录 1.在 web.xml 文件中配置前端处理器 2.在 springmvc.xml 文件中配置处理器映射器,处理器适配器,视图解析器 3.编写 Handler 4.编写 视图 index.jsp ...
- springboot+mybatis+springmvc整合实例
以往的ssm框架整合通常有两种形式,一种是xml形式,一种是注解形式,不管是xml还是注解,基本都会有一大堆xml标签配置,其中有很多重复性的.springboot带给我们的恰恰是“零配置”,&quo ...
- git排错
解决: 将远程仓库中除.git以外的所有文件删除,然后执行 git config --bool core.bare true 然后客户端重新push即可解决问题 还要注意远程仓库权限方面...
- C++ 预处理器
直接上代码 1.#define 预处理 #include <iostream> using namespace std; #define PI 3.14159 int main () { ...
- ubuntu 14.04 sudo apt-get 简单 安装 ffmpeg
一种方法是这样的sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next sudo apt-get update sudo apt-get in ...
- 谈高清显示接口HDMI、RGB、LVDS、MIPI、eDP、mini-LVDS、V-By-One
近年来随着电子产业的高速发展,智能显示设备也取得了辉煌的成就,高清显示得到了消费者的青睐.目前高清显示协议接口有RGB.LVDS.MIPI.eDP.HDMI.miniLVDS.V-by-One等,由于 ...
- Scala学习(四)练习
映射和元组&练习 1. 设置一个映射,其中包含你想要的一些装备,以及它们的价格.然后构建另一个映射,采用同一组键,但在价格上打9折 映射代码如下: object HelloScala{ def ...