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冲刺第三天
讨论成员:邵家文.李新.朱浩龙.陈俊金 讨论问题:如何将新学的技术应用于四则运算项目中 讨论地点:宿舍 进展:跟预期相差不远
随机推荐
- Activiti工作流搭建---初始化数据库
Activiti介绍 Activiti5是由Alfresco软件在2010年5月17日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理.工作流.服务协作等领域的一个开源的.灵活的.易扩展的可执 ...
- String类的常用方法详解
1:获取字符串的长度length(),下标从1开始 2:将其他类型转换为String类型toStrings() 3:去除字符串首尾的空格trim() 4:分割字符串spilt() 5:比较两个字符串是 ...
- java 实现Word或Excel 转Pdf
1:首先需要引入相关的jar word转pdf需要引入 aspose-words-15.8.0-jdk16.jar 下载JAR包 Word http://note.youdao.com/notesha ...
- css给列表添加序号
.middle ul{ counter-reset: show-list; } li{ padding-left: 30px; line-height: 1.3; position: relative ...
- 用OpenSCAD設計特製的遊戲骰子
一開始先製作一個簡單的立方體.定義一個變量「cube_size」,然後使用下圖的立方體程式.center=true的設定可讓立方體位於起始模型的正中央. 為你在OpenSCAD創造的物體加上不同顏色是 ...
- RMAN 数据库克隆文件位置转换方法
在使用RMAN克隆数据库时,如果辅助数据库(新数据库)使用了与目标数据库(原数据库)使用了不同的路径,那么就存在位置转换的问题.在Oracle中,控制文件用于定位数据文件以及联机重做日志文件,如果没有 ...
- Java的快速失败和安全失败
文章转自https://www.cnblogs.com/ygj0930/p/6543350.html 一:快速失败(fail—fast) 在用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的内容进 ...
- Qt+QGIS二次开发:QGIS里的编程模型
项目(QgsProject) 用于读写项目状态 图层分组(QgsLayerTreeGroup) 项目树的分组节点,用来存放图层节点. 图层节点(QgsLayerTreeLayer) 项目树的图层节点. ...
- Python实现杨辉三角,超详细!
巧妙实现杨辉三角代码 def triangles(): N=[1] #初始化为[1],杨辉三角的每一行为一个list while True: yield N #yield 实现记录功能,没有下一个ne ...
- android 通讯类资料整理
https://github.com/koush/AndroidAsync(websocket) https://github.com/loopj/android-async-http http:// ...