package com.bigdo.controls; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import com.bigdo.app.BaseActivity; import com.bigdo.app.R; import android.annotation.SuppressLint; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; public class DateSelectByYYYYMMToDoubleActivity extends BaseActivity { int sy, sm, ey, em; TextView sdate, edate; @SuppressLint("SimpleDateFormat") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_date_select_yyyymm_double); String st = this.getIntent().getStringExtra("st"); String et = this.getIntent().getStringExtra("et"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Calendar t = Calendar.getInstance(); t.add(Calendar.MONTH, t.get(Calendar.MONTH) - 1); if (st != null && !st.equals("") && st.length() == 6) { st = st.substring(0, 4) + "-" + st.substring(4) + "-01"; try { Date s_date = (Date) sdf.parse(st); t.setTime(s_date); } catch (Exception e) { et = ""; } } else { et = ""; } sy = t.get(Calendar.YEAR); sm = t.get(Calendar.MONTH) + 1; st = sy + "年" + ((sm <= 9) ? ("0" + sm) : sm) + "月"; if (et != null && !et.equals("") && et.length() == 6) { et = et.substring(0, 4) + "-" + et.substring(4) + "-01"; try { Date s_date = (Date) sdf.parse(et); t.setTime(s_date); } catch (Exception e) { t.add(Calendar.MONTH, t.get(Calendar.MONTH) + 1); } } else { t.add(Calendar.MONTH, t.get(Calendar.MONTH) + 1); } ey = t.get(Calendar.YEAR); em = t.get(Calendar.MONTH) + 1; et = ey + "年" + ((em <= 9) ? ("0" + em) : em) + "月"; sdate = (TextView) findViewById(R.id.activity_date_select_yyyymm_double_s); edate = (TextView) findViewById(R.id.activity_date_select_yyyymm_double_e); sdate.setText(st); edate.setText(et); sdate.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { goDateSelectActivity(sy, sm, 1); } }); edate.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { goDateSelectActivity(ey, em, 2); } }); final Button submit = (Button) findViewById(R.id.activity_date_select_yyyymm_double_submit); submit.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { getResult(); } }); } private void getResult() { Intent data = new Intent(); data.putExtra("st", sy + "" + ((sm <= 9) ? ("0" + sm) : sm)); data.putExtra("et", ey + "" + ((em <= 9) ? ("0" + em) : em)); this.setResult(1, data); this.finish(); } private void goDateSelectActivity(int y, int m, int requestCode) { Intent i = new Intent(Intent.ACTION_VIEW); i.putExtra("year", y); i.putExtra("month", m); i.setClass(this, DateSelectByYYYYMMActivity.class); i.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); startActivityForResult(i, requestCode); } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == 1) { if (resultCode == 1 && data != null) { sy = data.getIntExtra("year", sy); sm = data.getIntExtra("month", sm); String st = sy + "年" + ((sm <= 9) ? ("0" + sm) : sm) + "月"; sdate.setText(st); } } else if (requestCode == 2) { if (resultCode == 1 && data != null) { ey = data.getIntExtra("year", ey); em = data.getIntExtra("month", em); String et = ey + "年" + ((em <= 9) ? ("0" + em) : em) + "月"; edate.setText(et); } } } @Override public void onClearData() { // TODO Auto-generated method stub } @Override public void onVideoBroadcast(Intent intent) { // TODO Auto-generated method stub } }