Android 从timePickerDialog获取输入
我在一个项目中工作,用户在TimePickerDialog中输入时间。我想将该输入存储在另一个变量中,并将其显示为textViewAndroid 从timePickerDialog获取输入,android,android-timepicker,Android,Android Timepicker,我在一个项目中工作,用户在TimePickerDialog中输入时间。我想将该输入存储在另一个变量中,并将其显示为textView public class MainActivity extends Activity { Button b1; TextView tv; int hour,min; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceSta
public class MainActivity extends Activity {
Button b1;
TextView tv;
int hour,min;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b1 = (Button)findViewById(R.id.b1);
tv = (TextView)findViewById(R.id.tv1);
b1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
TimePickerDialog tpd = new TimePickerDialog(MainActivity.this, new OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
hour = hourOfDay;
min = minute;
}
}, hour, min, false);
tpd.show();
tv.setText(hour + ":" + min);
}
});
}
}
当我第一次运行此应用程序时,textview显示0:0。我按下按钮,对话框出现,我设置时间,然后按done,但textview不会更改,只有在我再次按下按钮后,textview才会更改为以前的输入。我想要的是,当我在timepickerdialog中按done时,textview将显示我设置的时间。它将显示该值,但仅在我再次按下按钮后显示。单击“完成”按钮时,您需要更新
文本视图。现在,您的TextView
在拾取完成后不会得到更新。只需更改代码,如下所示:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b1 = (Button)findViewById(R.id.b1);
tv = (TextView)findViewById(R.id.tv1);
b1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
TimePickerDialog tpd = new TimePickerDialog(MainActivity.this, new OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
hour = hourOfDay;
min = minute;
//Place it here
tv.setText(hour + ":" + min);
}
}, hour, min, false);
tpd.show();
}
});
}
}
试试这个
public class MainActivity extends Activity {
Button b1;
TextView tv;
int hour,min;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b1 = (Button)findViewById(R.id.b1);
tv = (TextView)findViewById(R.id.tv1);
b1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
TimePickerDialog tpd = new TimePickerDialog(MainActivity.this, new OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
hour = hourOfDay;
min = minute;
tv.setText(hour + ":" + min);
}
}, hour, min, false);
tpd.show();
}
});
}
}
tv.setText(小时+:“+min)代码>将这一行移到onTimeSet
函数内可能很完美