android两个activity传数据库,通过static变量从一个Activity传到下个Activity,通过数据库查询...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

从WaterQueryListActivity跳转到WaterQueryList2Activity 通过变量datebegin和 dateend把日期传到WaterQueryList2Activity 中。为什么在跳转回WaterQueryListActivity后再选择日期再进行查询的时候listView中的值不会改变

WaterQueryListActivity:

package edu.com.activity;

import java.util.Calendar;

import edu.com.service.ElecService;

import edu.com.tool.SelectNowData;

import android.app.Activity;

import android.app.DatePickerDialog;

import android.app.Dialog;

import android.content.Intent;

import android.os.Bundle;

import android.util.Log;

import android.view.View;

import android.view.Window;

import android.view.View.OnClickListener;

import android.widget.DatePicker;

import android.widget.ImageButton;

import android.widget.TextView;

public class WaterQueryListActivity extends Activity{

static String dornums;//登录的学号

static String datebegin;

static String dateend;

// private ElecService service;

private ImageButton query,down1,down2;

private TextView begin,end;

private final int DATE_DIALOG = 1;

private final int TIME_DIALOG = 2;

public void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.waterquery);

getDate();

View.OnClickListener dateBtnListener = new BtnOnClickListener(DATE_DIALOG);

down1 = (ImageButton) findViewById(R.id.DownImageButton1);

down1.setOnClickListener(dateBtnListener);

View.OnClickListener dateBtnListener2 = new BtnOnClickListener(TIME_DIALOG);

down2 = (ImageButton) findViewById(R.id.DownImageButton2);

down2.setOnClickListener(dateBtnListener2);

begin = (TextView) findViewById(R.id.begintextView);

end = (TextView) findViewById(R.id.endtextView);

queryWater();

}

protected Dialog onCreateDialog(int id) {

//用来获取日期

Calendar calendar = Calendar.getInstance();

Dialog dialog = null;

switch(id) {

case DATE_DIALOG:

DatePickerDialog.OnDateSetListener dateListener =

new DatePickerDialog.OnDateSetListener() {

@Override

public void onDateSet(DatePicker datePicker,

int year, int month, int dayOfMonth) {

begin = (TextView) findViewById(R.id.begintextView);

//Calendar月份是从0开始,所以month要加1

StringBuffer sb = new StringBuffer();

sb.append(String.format("%d-%02d-%02d",year,month+1,dayOfMonth));

begin.setText(sb);

}

};

dialog = new DatePickerDialog(this.getParent(),

dateListener,

calendar.get(Calendar.YEAR),

calendar.get(Calendar.MONTH),

calendar.get(Calendar.DAY_OF_MONTH));

break;

case TIME_DIALOG:

DatePickerDialog.OnDateSetListener dateListener2 =

new DatePickerDialog.OnDateSetListener() {

@Override

public void onDateSet(DatePicker datePicker,

int year, int month, int dayOfMonth) {

end = (TextView) findViewById(R.id.endtextView);

//Calendar月份是从0开始,所以month要加1

StringBuffer sb = new StringBuffer();

sb.append(String.format("%d-%02d-%02d",year,month+1,dayOfMonth));

end.setText(sb);

}

};

dialog = new DatePickerDialog(this.getParent(),

dateListener2,

calendar.get(Calendar.YEAR),

calendar.get(Calendar.MONTH),

calendar.get(Calendar.DAY_OF_MONTH));

break;

default:

break;

}

return dialog;

}

private class BtnOnClickListener implements View.OnClickListener {

private int dialogId = 0; //默认为0则不显示对话框

public BtnOnClickListener(int dialogId) {

this.dialogId = dialogId;

}

@Override

public void onClick(View view) {

showDialog(dialogId);

}

}

public void queryWater(){

query = (ImageButton)findViewById(R.id.searchButton);

query.setOnClickListener(new OnClickListener(){

public void onClick(View v){

datebegin = begin.getText().toString().trim();

dateend = end.getText().toString().trim();

Intent intent = new Intent();

// Bundle bundle = new Bundle();

// bundle.putString("datebegin", begin.getText().toString());

// bundle.putString("dateend", end.getText().toString());

// intent.putExtras(bundle);

intent.setClass(WaterQueryListActivity.this,WaterQueryList2Activity.class);

Window w=WaterQueryActivity.group_first.getLocalActivityManager().startActivity("WaterQueryListActivity", intent);

View view=w.getDecorView();

Log.e("msg2", datebegin);

WaterQueryActivity.group_first.setContentView(view);

//WaterQueryListActivity.this.onDestroy();

}

});

}

public void getDate(){

SelectNowData snd = new SelectNowData();

begin = (TextView)findViewById(R.id.begintextView);

begin.setText(snd.selectDate());

end = (TextView)findViewById(R.id.endtextView);

end.setText(snd.selectDate());

}

}

WaterQueryList2Activity:

package edu.com.activity;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import edu.com.model.Electricity;

import edu.com.model.User;

import edu.com.service.ElecService;

import edu.com.service.UserService;

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.provider.ContactsContract.Data;

import android.util.Log;

import android.view.View;

import android.view.Window;

import android.view.View.OnClickListener;

import android.widget.AdapterView;

import android.widget.AdapterView.OnItemClickListener;

import android.widget.ImageButton;

import android.widget.ListView;

import android.widget.SimpleAdapter;

import android.widget.Toast;

public class WaterQueryList2Activity extends Activity{

private ElecService service;

private ImageButton backbt;

private String b1,b2;

public void onCreate(Bundle savedInstanceState)

{

super.onCreate(savedInstanceState);

setContentView(R.layout.waterquerylist);

b1 = WaterQueryListActivity.datebegin+" 00:00:00";

b2 = WaterQueryListActivity.dateend+" 00:00:00";

service = new ElecService(this);

ListView listView = (ListView) this.findViewById(R.id.querylistView);

Log.e("tag", b1);

Log.e("tag",b2);

//获取到集合数据

List elects = service.getElecUse(b1,b2, 0, 5);

List> data = new ArrayList>();

for(Electricity elect : elects){

HashMap item = new HashMap();

item.put("dornum", elect.getDorNum());

item.put("eleuse", elect.getEleUse());

item.put("eledate", elect.getEleDate());

data.add(item);

}

//创建SimpleAdapter适配器将数据绑定到item显示控件上

SimpleAdapter adapter = new SimpleAdapter(this, data, R.layout.item,

new String[]{"dornum", "eleuse", "eledate"}, new int[]{R.id.dornumlist, R.id.eleuselist, R.id.eledatelist});

//实现列表的显示

listView.setAdapter(adapter);

backbt = (ImageButton)findViewById(R.id.backimageButton);

backbt.setOnClickListener(new OnClickListener(){

public void onClick(View v){

Intent intent = new Intent(WaterQueryList2Activity.this,WaterQueryListActivity.class);

Window w=WaterQueryActivity.group_first.getLocalActivityManager().startActivity("WaterQueryList2Activity", intent);

View view=w.getDecorView();

WaterQueryActivity.group_first.setContentView(view);

WaterQueryList2Activity.this.onDestroy();

}

});

}

}

数据库查询

package edu.com.service;

import java.util.ArrayList;

import java.util.List;

import edu.com.model.Electricity;

import edu.com.model.User;

import android.content.Context;

import android.database.Cursor;

import android.database.sqlite.SQLiteDatabase;

public class ElecService {

private DatabaseHelper dbHelper;

public ElecService(Context context){

dbHelper=new DatabaseHelper(context);

}

//根据房间号,时间,查询用电信息

public List getElecUse(String datebegin,String dateend,int offset, int maxCount) {

List elects = new ArrayList();

SQLiteDatabase db = dbHelper.getReadableDatabase();

Cursor cursor = db.rawQuery("select * from ElectTab where datetime([EleDate])>=? and datetime([EleDate])<=? limit ?,?",

new String[]{String.valueOf(datebegin),String.valueOf(dateend),String.valueOf(offset), String.valueOf(maxCount)});

while(cursor.moveToNext()){

String dornum = cursor.getString(cursor.getColumnIndex("DorNum"));

String eleuse = cursor.getString(cursor.getColumnIndex("EleUse"));

String eledate = cursor.getString(cursor.getColumnIndex("EleDate"));

elects.add(new Electricity(dornum,eleuse,eledate));

}

if(cursor != null){

cursor.close();

}

return elects;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值