Android之记账本
这个ColaBox记事本是我从网上下载下来的拿来学习一下的(APK下载点这里。)
从登记收入与开支的页面跳转到账单页面运用了SQL数据库的录入,整体表的结构为:
db.execSQL("CREATE TABLE bills ("
+ "_id INTEGER primary key autoincrement,"//ID
+" acctitemid integer,"//账目类型
+ "fee integer,"//费用
+ "userid integer,"//使用者
+ "sdate TEXT,"//日期
+ "stime TEXT,"//时间
+ "desc TEXT" // 备注
+ ");");
Android中的PID:顾名思义,它指的是Process的id。每个进程都有一个独立的id,可以通过pid来区分不同的进程。
在网上把进程PID常用的API搜了一下记录于此:
android.os.Process.myPid( )
得到当前进程的pid
android.os.Process.killProcess ( int pid )
杀死相应进程号的进程
List<ActivityManager.RunningProcessInfo> getRunningAppProcesses( )
获取当前正在运行的进程
android.app.ActivityManager.RunningAppProcessInfo.pid
相应的RunningAppProcessInfo的pid
List<ActivityManager.RunningServiceInfo> getRunningServices ( int maxNum )
得到当前正在运行的ServiceInfo
android.app.ActivityManager.RunningServiceInfo.pid
相应的RunningServiceInfo的pid
而UID是应用在在Android中数据共享中,不同的应用有不同的UID,在Android中要实现UID共享数据只需在程序a,b中的menifest配置即可:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.perseus.a"
android:versionCode=""
android:versionName="1.0"
android:sharedUserId="com.share"
>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.perseus.b"
android:versionCode=""
android:versionName="1.0"
android:sharedUserId="com.share"
>
db.execSQL("CREATE TABLE acctitem ("
+ "_ID INTEGER PRIMARY KEY,"//ID
+ "PID integer,"//PID
+ "NAME TEXT" // 姓名
+ ");");
账目表:
db.execSQL("insert into acctitem values (1,null,'收入')");
db.execSQL("insert into acctitem values (2,1,'工资')");
db.execSQL("insert into acctitem values (9998,1,'其他')");
db.execSQL("insert into acctitem values (0,null,'支出')");
db.execSQL("insert into acctitem values (3,0,'生活用品')");
db.execSQL("insert into acctitem values (4,0,'水电煤气费')");
db.execSQL("insert into acctitem values (5,0,'汽油费')");
db.execSQL("insert into acctitem values (9999,0,'其他')");
主类ColaBox:package com.cola.ui;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.KeyEvent;
import android.widget.ImageView;
import android.widget.TextView; public class ColaBox extends Activity {
//定义线程
private Handler mHandler = new Handler();
ImageView imageview;
TextView textview;
int alpha = 255;
int b = 0;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
imageview = (ImageView) this.findViewById(R.id.ImageView01);
textview = (TextView) this.findViewById(R.id.TextView01); Log.v("ColaBox", "ColaBox start ...");
imageview.setAlpha(alpha);
//线程
new Thread(new Runnable() {
public void run() {
initApp(); while (b < 2) {
try {
if (b == 0) {
Thread.sleep(1000);
b = 1;
} else {
Thread.sleep(50);
} updateApp(); } catch (InterruptedException e) {
e.printStackTrace();
}
} }
}).start();
//通过Handler运行线程所传递的信息
mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
imageview.setAlpha(alpha);
imageview.invalidate(); }
}; }//更新
public void updateApp() {
alpha -= 5; if (alpha <= 0) {
b = 2;
Intent in = new Intent(this, com.cola.ui.Frm_Addbills.class);
startActivity(in);
this.finish();
} mHandler.sendMessage(mHandler.obtainMessage()); }
//初始化
public void initApp(){
BilldbHelper billdb=new BilldbHelper(this);
billdb.FirstStart();
billdb.close(); } public boolean onKeyDown(int keyCode, KeyEvent event) {
Log.v("cola", "keycode=" + keyCode);
switch (keyCode) {
case KeyEvent.KEYCODE_BACK:
Log.v("ColaBox", "ColaBox end ...");
return true; }
return false;
}
}
运行效果:

Android之记账本的更多相关文章
- Android开发实战——记账本(2)
开发日志(2)——Bean目录以及数据库 首先编写一些自己生成的数据进行测试,看一下能否显示在模拟器上.那前提就是先写出bean目录,这和之前学的Javaweb步骤差不多.bean目录有三个变量事件. ...
- 安卓开发实战-记账本APP(六)
记账本APP开发---终结篇 昨天的动态数字录屏奉上:在抖音上拍了一个(ps:欢迎点赞) https://v.douyin.com/poEjmG/ 今天将图表的内容进行了制作,我用的是MPChart的 ...
- 简单记账本APP开发一
在对Android的一些基础的知识有了一定了解,以及对于AndroidStudio的如何使用有了 一定的熟悉后,决定做一个简单的记账本APP 开发流程 1.记账本的页面 2.可以添加新的账目 (一)页 ...
- 进度1_家庭记账本App
今天完成了昨天的初步构想,详细介绍见上一篇博客,具体项目结构和案例如下: MainActivity.java: package com.example.familybooks; import andr ...
- 家庭版记账本app开发完成
经过这几天关于android的相关学习,对于家庭版记账本app以及开发结束. 实现的功能为:用户的注册.登录.添加支出账单.添加收入账单.显示所有的该用户的账单情况(收入和支出).生产图表(直观的显示 ...
- 记账本NABCD分析
学生记账本NABCD分析 N(Need,需求) 随着我们进入大学开始逐步的扩大自己的消费水平,而我们每天无法准确的记住一笔一笔的消费记录.常常,每一个月末时我们在宿舍楼道听到不少学生抱怨这个月怎么花钱 ...
- 记账本APP(2)
今天下载了Hbuiler,生成了一个记账本APP,目前里面只可以 输入今日消费 明天将会做出来记录以及计算总额于月消费.
- Android开发实战——记账本(4)
开发日志(4)——MainActivity 在MainActivity中编写了几个方法.首先,点击账本的一条记录可以选择删除他,然后重写了fab,使之在点击他后能够添加记录.还写了删除全部记录的方法. ...
- android开发实战-记账本APP(一)
记账本开发流程: 对于一个记账本的初步开发而言,我实现的功能有: ①实现一个记账本的页面 ②可以添加数据并更新到页面中 ③可以将数据信息以图表的形式展现 (一)首先,制作一个记账本的页面. ①在系统自 ...
随机推荐
- IoC模式(Inversion of Control)
1.依赖 依赖就是有联系,有地方使用到它就是有依赖它,一个系统不可能完全避免依赖.如果你的一个类或者模块在项目中没有用到它,恭喜你,可以从项目中剔除它或者排除它了,因为没有一个地方会依赖它.下面看 ...
- sql prompt格式设置
sql prompt格式设置. 格式前: 格式后:
- Android Study ING
http://bbs.csdn.net/topics/370249613 android的tools和adb命令 http://www.u148.net/article/102147.html htt ...
- POJ2142——The Balance
刚学习的扩展欧几里得算法,刷个水题 求解 线性不定方程 和 模线性方程 求方程 ax+by=c 或 ax≡c (mod b) 的整数解 1.ax+by=gcd(a,b)的一个整数解: <sp ...
- pjsip视频通信开发(上层应用)之数字键盘的制作
在pjsip视频通信开发(上层应用)之EditText重写中我制作了一个显示输入内容的EditText,这里将制作一个数字键盘,其实跟计算器一样,最多的就是用TableLayout来实现,内部通过权重 ...
- MemCached Cache Java Client封装优化历程
1.什么是memcached?(从官网翻译翻译) 免费和开源.高性能.分布式内存对象缓存系统,通用在自然界,但用于加速动态web应用程序,减轻数据库负载. Memcached是一个内存中的键值存储为小 ...
- memcpy的用法总结
1.memcpy 函数用于 把资源内存(src所指向的内存区域) 拷贝到目标内存(dest所指向的内存区域):拷贝多少个?有一个size变量控制拷贝的字节数:函数原型:void *memcpy(voi ...
- java spring 使用注解来实现缓存
这里举例使用spring3.1.4 + ehcache 注解的方式使用cache 是在spring3.1加入的 使用方法: 1.ehcache依赖+spring依赖 <!-- ehcache依赖 ...
- 解决Mac下SublimeLinter的Unsafe Characters警告
Mac下编辑JS文件, 如果是中文字符的行会警告: This character may get silently deleted by one or more browsers. SublimeLi ...
- 使用代码修改camera.cullingMask
通过查找http://docs.unity3d.com/Documentation/ScriptReference/Camera-cullingMask.html只是能够指定某个层,但要指定多个层却不 ...