现在比较流行可以通过用户拖动指针自定义时间的定时器,公司boss非得也要个这样的,于是网上找了些资源,看了一些开源框架,改了一个出来了。
先上效果图吧:
关键可操作代码也贴出来:
</pre><pre name="code" class="java">public class MainActivity extends Activity implements TimePickerDialog.OnTimeSetListener { private TextView timeTextView, skip; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); skip = (TextView) findViewById(R.id.skip); skip.setOnClickListener(skipClick); timeTextView = (TextView) findViewById(R.id.time_textview); Button timeButton = (Button) findViewById(R.id.click); timeButton.setOnClickListener(new OnClickListener() { @SuppressWarnings("unused") @Override public void onClick(View v) { // TODO Auto-generated method stub Calendar now = Calendar.getInstance(); TimePickerDialog tpd = TimePickerDialog.newInstance( MainActivity.this, now.get(Calendar.HOUR_OF_DAY), now.get(Calendar.MINUTE), true); tpd.setThemeDark(true);// 设置主题,true or false tpd.vibrate(true);// 设置震动,true or false tpd.dismissOnPause(false);// 暂停关闭 // 这里你也可以设置true,主要是显示title和颜色突出显示 if (false) { tpd.setAccentColor(Color.parseColor("#ac3f69")); } if (false) { tpd.setTitle("TimePicker Title"); } tpd.setOnCancelListener(new DialogInterface.OnCancelListener() { @Override public void onCancel(DialogInterface dialogInterface) { Log.d("TimePicker", "Dialog was cancelled"); } }); tpd.show(getFragmentManager(), "Timepickerdialog"); } }); } public void onResume() { super.onResume(); TimePickerDialog tpd = (TimePickerDialog) getFragmentManager() .findFragmentByTag("Timepickerdialog"); if (tpd != null) tpd.setOnTimeSetListener(this); } @Override public void onTimeSet(RadialPickerLayout view, int hourOfDay, int minute) { // TODO Auto-generated method stub String hourString = hourOfDay < 10 ? "0" + hourOfDay : "" + hourOfDay; String minuteString = minute < 10 ? "0" + minute : "" + minute; String time = "You picked the following time: " + hourString + "h" + minuteString; timeTextView.setText(time); }
里面还带了一个通过seekbar来实现拖动设置时间的,不过boss已经满意这一个了,于是那个就没写下去了,有兴趣自己可以接着写。思路很简单。