zoukankan      html  css  js  c++  java
  • 软件开发记录06

       今天我实现了添加预算和显示预算列表和home页面跳转其他页面的功能。

    (1)添加预算

    package com.example.feigou.test;
    
    import com.example.feigou.activity.MainActivity;
    import com.example.feigou.db.ComeModle;
    import com.example.feigou.db.MyDBHelper;
    import com.example.personmoney.R;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.database.sqlite.SQLiteDatabase;
    import android.os.Bundle;
    import android.text.Editable;
    import android.text.TextWatcher;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemSelectedListener;
    import android.widget.ArrayAdapter;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.Spinner;
    import android.widget.TextView;
    import android.widget.Toast;
    
    public class AddPreActivity extends Activity {
    
        private static final String[] style={"现金","银行卡","兑换券"};
        private static final String[] fenlei= {"生活用品","工作学习","交通工具","业余爱好","其他"};
        
        private EditText etNum ,etNote;
        private Spinner spStyle, spFenlei;
        private TextView tvTime, timeshow;
        private Button btnRest, btnSubmit;
        
        private ArrayAdapter<String> adapterStyle;
        private ArrayAdapter<String> adapterFenlei;
        
        private String money,note,sStyle,sFenlei;
        String strTime; 
        
        //数据库
            private MyDBHelper DBsqlite;
            private SQLiteDatabase sqlite;
            
            @Override
            protected void onCreate(Bundle savedInstanceState) {
                // TODO Auto-generated method stub
                super.onCreate(savedInstanceState);
                setContentView(R.layout.activity_addpre);
                initview();
            }
        
            public void initview() {
                btnRest = (Button) findViewById(R.id.income_btn_reset);
                btnSubmit = (Button) findViewById(R.id.income_btn_submit);
                // 支出金额
                etNum = (EditText) findViewById(R.id.etincome01);
                // 支出备注
                etNote = (EditText) findViewById(R.id.etincomenote);
                // 重置
                btnRest = (Button) findViewById(R.id.income_btn_reset);
                // 确定
                btnSubmit = (Button) findViewById(R.id.income_btn_submit);
                // 支出时间
                tvTime = (TextView) findViewById(R.id.tvincome04);
                
                // 显示时间
                timeshow = (TextView) findViewById(R.id.tvtime);
                // 支出方式
                spStyle = (Spinner) findViewById(R.id.spinner01);
                //支出分类
                spFenlei = (Spinner) findViewById(R.id.spinner02);
                // 设置监听是否有输入金额
                etNum.addTextChangedListener(new TextWatcher() {
    
                    @Override
                    public void beforeTextChanged(CharSequence s, int start, int count,
                            int after) {
                        // TODO Auto-generated method stub
    
                    }
    
                    @Override
                    public void onTextChanged(CharSequence s, int start, int before,
                            int count) {
                        // TODO Auto-generated method stub
    
                        if (s == null || s.length() <= 0) {
                            btnSubmit.setEnabled(false);
                        } else {
                            btnSubmit.setEnabled(true);
                        }
                    }
    
                    @Override
                    public void afterTextChanged(Editable s) {
                        // TODO Auto-generated method stub
                        
                    }
    
                });
                // 收入方式适配器添加
                adapterStyle = new ArrayAdapter<String>(this,
                        android.R.layout.simple_spinner_item, style);
    
                adapterStyle.setDropDownViewResource(R.layout.myspinner_dropdown);
    
                spStyle.setAdapter(adapterStyle);
    
                spStyle.setOnItemSelectedListener(new OnItemSelectedListener() {
    
                    @Override
                    public void onItemSelected(AdapterView<?> parent, View view,
                            int position, long id) {
                        // TODO Auto-generated method stub
                        Toast.makeText(AddPreActivity.this, "选择的是:" + style[position],
                                Toast.LENGTH_SHORT).show();
                        sStyle = style[position];
                    }
    
                    @Override
                    public void onNothingSelected(AdapterView<?> parent) {
                        // TODO Auto-generated method stub
    
                    }
                });
                // 收入分类添加适配器
                adapterFenlei = new ArrayAdapter<String>(this,
                        android.R.layout.simple_spinner_item, fenlei);
    
                adapterFenlei.setDropDownViewResource(R.layout.myspinner_dropdown);
                spFenlei.setAdapter(adapterFenlei);
                spFenlei.setOnItemSelectedListener(new OnItemSelectedListener() {
    
                    @Override
                    public void onItemSelected(AdapterView<?> parent, View view,
                            int position, long id) {
                        // TODO Auto-generated method stub
                        Toast.makeText(AddPreActivity.this, "选择的是:" + fenlei[position],
                                Toast.LENGTH_SHORT).show();
                        sFenlei = fenlei[position];
                    }
    
                    @Override
                    public void onNothingSelected(AdapterView<?> parent) {
                        // TODO Auto-generated method stub
    
                    }
                });
                // 重置
                btnRest.setOnClickListener(new OnClickListener() {
    
                    @Override
                    public void onClick(View v) {
                        // TODO Auto-generated method stub
                        etNum.setText("");
                        etNote.setText("");
                    }
                });
                // 确定提交
                btnSubmit.setOnClickListener(new OnClickListener() {
    
                    @Override
                    public void onClick(View v) {
                        // TODO Auto-generated method stub
                        money = etNum.getText().toString();
                        note = etNote.getText().toString();
                        
                        if(new ComeModle(AddPreActivity.this).save("addpre",money,sStyle,sFenlei,strTime,note)){
                            Toast.makeText(AddPreActivity.this, "保存成功!!", Toast.LENGTH_SHORT).show();
                            Intent intent  = new Intent(AddPreActivity.this,MainActivity.class);
                            startActivity(intent);
                            AddPreActivity.this.finish();
                        }else{
                            Toast.makeText(AddPreActivity.this, "保存失败,请重新操作!", Toast.LENGTH_SHORT).show();
                        }
                        
                    }
                });
    
                // 输入时间
                tvTime.setOnClickListener(new OnClickListener() {
    
                    @Override
                    public void onClick(View v) {
                        // TODO Auto-generated method stub
                        Intent intent = new Intent(AddPreActivity.this,
                                DataActivity.class);
                        startActivityForResult(intent, 0);
                    }
                });
            }
            
            // 覆盖onacticityResult方法
            @Override
            protected void onActivityResult(int requestCode, int resultCode, Intent data) {
                // TODO Auto-generated method stub
                // super.onActivityResult(requestCode, resultCode, data);
                switch (resultCode) {
                case RESULT_OK:
                    Bundle b = data.getExtras();
                    strTime = b.getString("time");
                    timeshow.setText(strTime);
    
                    break;
    
                default:
                    break;
                }
            }
    
    }

    (2)显示预算列表

    package com.example.feigou.test;
    
    import com.example.feigou.db.MyDBHelper;
    import com.example.personmoney.R;
    
    import android.app.Activity;
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.ViewGroup.LayoutParams;
    import android.widget.TableLayout;
    import android.widget.TableRow;
    import android.widget.TextView;
    
    public class ListPreActivity extends Activity{
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            
            setContentView(R.layout.activity_listpre);
            
            // 向TableLayout中添加数据库数据
            addDates();
    
            
        }
        public void addDates() {
            MyDBHelper database = new MyDBHelper(ListPreActivity.this,
                    "jizhang.db", null, 2);// 这段代码放到Activity类中才用this
            SQLiteDatabase db = database.getReadableDatabase();
            TableLayout table = (TableLayout) findViewById(R.id.tlListCome);
            //table.setStretchAllColumns(true);
            // Log.i("test", "1");
            Cursor c = db.rawQuery("select * from come where inorout=?",
                    new String[]{"addpre"});// 查询并获得游标
            if (c.moveToFirst()) {
    
                do {
                    Log.i("c.getcount()=", c.getCount() + "");
    
                    String inorout = c.getString(c.getColumnIndex("inorout"));
                    String money = c.getString(c.getColumnIndex("money"));
                    String style = c.getString(c.getColumnIndex("style"));
                    String fenlei = c.getString(c.getColumnIndex("fenlei"));
                    String time = c.getString(c.getColumnIndex("time"));
                    String note = c.getString(c.getColumnIndex("note"));
                    Log.i("inorout:", inorout);
                    Log.i("fenlei:", fenlei);
                    Log.i("time", time);
                    TableRow tablerow = new TableRow(ListPreActivity.this);
                    
                    TextView tvText1 = new TextView(ListPreActivity.this);
                    //汉化
                    if(inorout.equalsIgnoreCase("income")){
                        inorout="收入";
                    }else if(inorout.equalsIgnoreCase("outcome")){
                        inorout="支出";
                    }else{
                        inorout="预算";
                    }
                    tvText1.setText(inorout);
                    
                    TextView tvText2 = new TextView(ListPreActivity.this);
                    tvText2.setText(money);
                    TextView tvText3 = new TextView(ListPreActivity.this);
                    tvText3.setText(style);
                    TextView tvText4 = new TextView(ListPreActivity.this);
                    tvText4.setText(fenlei);
                    TextView tvText5 = new TextView(ListPreActivity.this);
                    tvText5.setText(time);
                    TextView tvText6 = new TextView(ListPreActivity.this);
                    tvText6.setText(note);
                    tablerow.addView(tvText1);
                    tablerow.addView(tvText2);
                    tablerow.addView(tvText3);
                    tablerow.addView(tvText4);
                    tablerow.addView(tvText5);
                    tablerow.addView(tvText6);
                    table.addView(tablerow, new TableLayout.LayoutParams(
                            LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
                } while (c.moveToNext());
    
            }
        }
    }

    (3)home页跳转其他页面功能

    package com.example.feigou.activity;
    
    
    import com.example.feigou.test.AddPreActivity;
    import com.example.feigou.test.IncomeActivity;
    import com.example.feigou.test.ListComeActivity;
    import com.example.feigou.test.ListPreActivity;
    import com.example.feigou.test.OutcomeActivity;
    import com.example.feigou.test.SettingActivity;
    import com.example.personmoney.R;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.ImageView;
    import android.widget.LinearLayout;
    
    public class MainActivity extends Activity implements OnClickListener {
    
        private LinearLayout llIncome,llOutcome,llList,llSeting,llModle,llBiaoge,llFenlei;
        private ImageView iv01;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_home);
            initView();
            
        }
        public void initView() {
            iv01=(ImageView) findViewById(R.id.ivHomeIncome);
            llIncome=(LinearLayout) findViewById(R.id.llincome);
            llOutcome=(LinearLayout) findViewById(R.id.lloutcome);
            llList=(LinearLayout) findViewById(R.id.lllist);
            llSeting=(LinearLayout) findViewById(R.id.llsetting);
            llFenlei=(LinearLayout) findViewById(R.id.llfenlei);
            llModle=(LinearLayout) findViewById(R.id.llmodle);
            
            //设置监听器
            llIncome.setOnClickListener(this);
            llOutcome.setOnClickListener(this);
            llList.setOnClickListener(this);
            llSeting.setOnClickListener(this);
            llFenlei.setOnClickListener(this);
            llModle.setOnClickListener(this);
            
        }
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            switch(v.getId()) {
            //判断是否有支出
            case R.id.llincome:
                Log.i("test", "aaa");
                Intent intentIncome=new Intent(MainActivity.this,IncomeActivity.class);
                startActivity(intentIncome);
                break;
                
            case R.id.lloutcome://支出
                Intent intentOutcome=new Intent(MainActivity.this,OutcomeActivity.class);
                startActivity(intentOutcome);
                break;
            case R.id.lllist://收支列表
                Intent intentList=new Intent(MainActivity.this,ListComeActivity.class);
                startActivity(intentList);
                break;
            case R.id.llsetting://设置列表
                Intent intentSetting=new Intent(MainActivity.this,SettingActivity.class);
                startActivity(intentSetting);
                break;
                
            case R.id.llfenlei://预算列表
                Intent intentFenlei=new Intent(MainActivity.this,ListPreActivity.class);
                startActivity(intentFenlei);
                break;
            case R.id.llmodle://收支列表
                Intent intentModle=new Intent(MainActivity.this,AddPreActivity.class);
                startActivity(intentModle);
                break;
            default:
                break;
            }
    
        }
    
    }
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
  • 相关阅读:
    css:水平居中和垂直居中
    python celery多worker、多队列、定时任务
    python 单例模式
    单例模式
    django 缓存信号等
    redis常用的命令总结
    在python项目中导出项目依赖的模块信息
    面向对象:类中的特殊成员
    python写算法中的栈
    CatLog_小鱼要加油
  • 原文地址:https://www.cnblogs.com/wl2017/p/8503461.html
Copyright © 2011-2022 走看看