Android应用之个人应用软件开发(2)【签到功能和记账】
2011-08-16 01:57
435 查看
最近白天都有点忙,明天还要上班,恼火啊···现在才有空把这两篇文章发出来···
上次说了一个思路,那首先就是把UI弄出来。
android给我们提供了几种数据存储的方法:
1,Shared Preferences 2,sqlite database
利用SharedPreference来做一些简单的小功能还是很不错的。
下面我们来实现一个签到的功能。
如图:
先来看看签到功能:
主要就是进入理财界面有个类似提示今日是否进行过操作的记录,主要目的就是提醒是否今天已经进行过添加记账,而且在界面UI上面多弄这样一个简单的小功能也是很好看很不错的。呵呵,做了两张小图,一个是“签到” 一个是“未签到” 那接下来就看看代码怎么写的。
首先定义一下共享优先数据基础字段:
然后就是处理签到的功能:
页面的全部代码:
签到功能只用到了 SharedPreferences ,而且如果我们拥有的是大量的数据,并且要随掉随用的方法那就得用到Sqlite database了。下一节说一下把这些和数据相关的东西分层,毕竟一个规整干净的代码才是我们想见到的。
然后再来看一下记账功能的UI:
上半部分同样继承了签到功能,还有把详细需要填写开销表单列出来了。简单易用就是我们想要的功能,我只想在以后我想记账的时候达到一键添加就可以纪录我今天的理财记账。下半部分主要显示了今日和昨日的开销信息,这样也有一个对比,昨天和今天的开资就一目了然了,哈哈。最重要的是下拉列表,有一个很重要的功能就是我们需要下拉列表显示这个月已经添加账目的日期,并且选中之后赋值到表单中可以进行修改编辑。也达到了查询任意一天的账目开销情况。那么我们整个UI就基本具有了这样预期的功能了。下一节我们就来实现这个功能。
关于Sqlite database数据访问的东西下一节贴出来,也希望大家相互交流,如果有能改进的地方大家相互学习。
上次说了一个思路,那首先就是把UI弄出来。
android给我们提供了几种数据存储的方法:
1,Shared Preferences 2,sqlite database
利用SharedPreference来做一些简单的小功能还是很不错的。
下面我们来实现一个签到的功能。
如图:
先来看看签到功能:
主要就是进入理财界面有个类似提示今日是否进行过操作的记录,主要目的就是提醒是否今天已经进行过添加记账,而且在界面UI上面多弄这样一个简单的小功能也是很好看很不错的。呵呵,做了两张小图,一个是“签到” 一个是“未签到” 那接下来就看看代码怎么写的。
首先定义一下共享优先数据基础字段:
//定义共享优先数据及基础字段 private String MY_RMBCost ="MY_RMBCost"; private String TodayTime ="TodayTime";
然后就是处理签到的功能:
Time t = new Time(); t.setToNow(); int lastmonth = t.month + 1 ; final String str = t.year + "年" + lastmonth + "月" + t.monthDay + "日"; final String nowtime =my_rmb_data.getString(TodayTime, "").toString(); if(nowtime.equals(str)==true) { tv_time.setText("日期:"+ nowtime +"已签到!"); bt_qiandao.setBackgroundResource(R.drawable.yqd); } else { tv_time.setText("日期:"+ str); bt_qiandao.setBackgroundResource(R.drawable.qd); }
页面的全部代码:
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.text.format.Time;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class myrmbmanage extends Activity {
//定义共享优先数据及基础字段
private String MY_RMBCost ="MY_RMBCost";
private String TodayTime ="TodayTime";
public void onCreate(Bundle savedInstanceState ){
super.onCreate(savedInstanceState);
setContentView(R.layout.myrmbmanage);
final Button bt_qiandao = (Button)findViewById(R.id.bt_qiandao);
final TextView tv_time = (TextView)findViewById(R.id.tv_qiandaotime);
final Button bt_jz = (Button)findViewById(R.id.bt_jz);
//读取共享数据
SharedPreferences my_rmb_data = getSharedPreferences(MY_RMBCost, 0);
Time t = new Time(); t.setToNow(); int lastmonth = t.month + 1 ; final String str = t.year + "年" + lastmonth + "月" + t.monthDay + "日"; final String nowtime =my_rmb_data.getString(TodayTime, "").toString(); if(nowtime.equals(str)==true) { tv_time.setText("日期:"+ nowtime +"已签到!"); bt_qiandao.setBackgroundResource(R.drawable.yqd); } else { tv_time.setText("日期:"+ str); bt_qiandao.setBackgroundResource(R.drawable.qd); }
//按钮操作部分
//签到功能
bt_qiandao.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
SharedPreferences my_rmb_data = getSharedPreferences(MY_RMBCost, 0);
if(my_rmb_data.getString(TodayTime, "").toString().equals(str)==true)
{
Toast.makeText( myrmbmanage.this , "今日已签到!", Toast.LENGTH_SHORT).show();
}
else
{
my_rmb_data.edit()
.putString(TodayTime, str)
.commit();
tv_time.setText("日期:"+ str +"已签到!");
bt_qiandao.setBackgroundResource(R.drawable.yqd);
Toast.makeText( myrmbmanage.this , "签到成功!", Toast.LENGTH_SHORT).show();
}
}
});
//记账
bt_jz.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent( myrmbmanage.this, todayspend.class);
startActivity(intent);
}
});
}
}
签到功能只用到了 SharedPreferences ,而且如果我们拥有的是大量的数据,并且要随掉随用的方法那就得用到Sqlite database了。下一节说一下把这些和数据相关的东西分层,毕竟一个规整干净的代码才是我们想见到的。
然后再来看一下记账功能的UI:
上半部分同样继承了签到功能,还有把详细需要填写开销表单列出来了。简单易用就是我们想要的功能,我只想在以后我想记账的时候达到一键添加就可以纪录我今天的理财记账。下半部分主要显示了今日和昨日的开销信息,这样也有一个对比,昨天和今天的开资就一目了然了,哈哈。最重要的是下拉列表,有一个很重要的功能就是我们需要下拉列表显示这个月已经添加账目的日期,并且选中之后赋值到表单中可以进行修改编辑。也达到了查询任意一天的账目开销情况。那么我们整个UI就基本具有了这样预期的功能了。下一节我们就来实现这个功能。
关于Sqlite database数据访问的东西下一节贴出来,也希望大家相互交流,如果有能改进的地方大家相互学习。
相关文章推荐
- Android应用之个人应用软件开发(3)【SQLite数据库及理财功能实现】
- Android应用之个人应用软件开发(4)【深度UI设计自定义控件】
- Android应用之个人应用软件开发(1)【需求及UI布局】
- Android应用之个人应用软件开发【全套程序展示及APK下载】
- Android应用之个人应用软件开发【android环境搭建及说明】
- C#开发微信门户及应用(39)--使用微信JSSDK实现签到的功能
- Android开发 实现一般应用常有的 首次启动 展示引导图功能
- android应用开发揭秘之实现examples_06_01(shared preferences存储参数功能)
- android中的sqlit3数据库进行手机应用软件开发(自写的一个财务管理软件,这里主要讲收入录入模块)
- android调用相应的应用市场进行评价功能开发
- Basic4android:多功能的Android应用软件快速开发平台
- Android 应用软件开发(三)Activity&Intent
- android应用开发后在硬件和软件上都变强大
- Android 应用软件开发(六)窗口布局
- android 做着玩(一)简单记账软件 sqlite数据库开发
- android应用开发揭秘之实现file与shared preferences这2种存储参数功能)
- Android手机软件开发简单计算功能一例
- 【Android应用开发】-屏幕截图功能--截取全屏,无需Root(附源码)
- 【Android应用开发】-(13)屏幕截图功能--截取全屏,无需Root(附源码)
- android应用开发存储方式之SQLite(android自带的数据库)的一些个人理解