阅读背景:

Android 自定义日期和时间和星期的弹窗

来源:互联网 
public class MainActivity extends Activity implements OnClickListener {

	// 文本日期
	private TextView tvEndDate;
	private TextView tvEndTime;
	
	
	private Button button1;
	private Button button2; 
	private Intent localIntent;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.act_time_picker);

		tvEndDate = (TextView) findViewById(R.id.lv_publish_end_date_tv);
		tvEndTime = (TextView) findViewById(R.id.lv_publish_end_time_tv);
		initDataAndTime(tvEndDate, tvEndTime);
		

		button1 = (Button) findViewById(R.id.button1);
		button2 = (Button) findViewById(R.id.button2);
		
		button1.setOnClickListener(this);
		button2.setOnClickListener(this);
	}

	/**
	 * 初始化日期和时间 (定位时间到每周周五)
	 * 
	 * @param paramTextView1
	 * @param paramTextView2
	 */
	public void initDataAndTime(TextView paramTextView1, TextView paramTextView2) {

		Calendar localCalendar1 = Calendar.getInstance();
		int i = localCalendar1.get(1);
		int j = localCalendar1.get(2);
		int k = localCalendar1.get(5);
		int m = -1 + (7 + localCalendar1.get(5) - localCalendar1.get(7));
		int n = localCalendar1.get(11);
		if (((k == m) && (n >= 18)) || (k > m)) {
			m = -1 + (14 + localCalendar1.get(5) - localCalendar1.get(7));
		}
		if (m > DateTimeUtility.getDaysOfCurrentMonth()) {
			if (j + 1 >= 12) {
				i++;
			}
			Calendar localCalendar2 = DateTimeUtility
					.convertDateToCalendar(DateTimeUtility.covertStringToDate(i
							+ "-" + (j + 1) + "-" + m + " " + 18 + ":00",
							"yyyy-MM-dd HH:mm"));
			j = localCalendar2.get(2);
			m = localCalendar2.get(5);
		}
		paramTextView1.setText(i + "-" + (j + 1) + "-" + m);
		paramTextView2.setText(18 + ":" + "00");
	}

	@Override
	public void onClick(View v) {

		switch (v.getId()) {
		case R.id.button1:
			localIntent = new Intent(this, DateTimePickerActivity.class);
			localIntent.putExtra("date", tvEndDate.getText().toString() + " "+ tvEndTime.getText().toString());
			localIntent.putExtra("time", false);
			startActivityForResult(localIntent, 1003);

			break;
		case R.id.button2:
			localIntent = new Intent(this, DateTimePickerActivity.class);
			localIntent.putExtra("date", tvEndDate.getText().toString() + " "+ tvEndTime.getText().toString());
			localIntent.putExtra("time", true);
			startActivityForResult(localIntent, 1003);
			break;
		default:
			break;
		}
	}
	
	/**
	 * 返回的结果
	 */
	@Override
	protected void onActivityResult(int requestCode, int resultCode, Intent data) {
		super.onActivityResult(requestCode, resultCode, data);
		int k;
		if (resultCode == -1) {

			if (requestCode != 1003) {
				return;
			}
			k = data.getIntExtra("isTime", 0);
			if (k == 2) {
				String endDate = data.getStringExtra("Day");
				tvEndDate.setText(endDate);
			}
			if (k == 1) {
				String endTime = data.getStringExtra("Times");
				tvEndTime.setText(endTime);
			}

		}
	}

}
public class MainActivity extends Activity impl



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: