我有一个timepicker课程,可以在挑选后显示时间。 我的问题是如何编写一个函数来检索字符串形式的时间(来自mTimeDisplay)而不是文本视图?
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mTimeDisplay = (TextView) findViewById(R.id.time);
mPickTime = (Button) findViewById(R.id.timepicker);
//Pick time's click event listener
mPickTime.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
showDialog(TIME_DIALOG_ID);
}
});
}
// update time
public void updatetime()
{
mTimeDisplay.setText(
new StringBuilder()
.append(pad(mhour)).append(":")
.append(pad(mminute))
.append(" to ")
.append(pad(mhour2)).append(":")
.append(pad(mminute2))
);
}
private static String pad(int c) {
if (c >= 10)
return String.valueOf(c);
else
return "0" + String.valueOf(c);
}
答案 0 :(得分:2)
你可以这样开始
StringBuilder sb = new StringBuilder()
.append(pad(mhour)).append(":")
.append(pad(mminute))
.append(" to ")
.append(pad(mhour2)).append(":")
.append(pad(mminute2));
String time = sb.toString() // or you can get directly value from sb.toString() as per you requirement
并将此行置于评论
/* mTimeDisplay.setText(
new StringBuilder()
.append(pad(mhour)).append(":")
.append(pad(mminute))
.append(" to ")
.append(pad(mhour2)).append(":")
.append(pad(mminute2))
); */
答案 1 :(得分:1)
TextView.getText()方法返回CharSequence
您可以直接使用或使用toString
方法转换为字符串,例如
String time = mTimeDisplay.getText().toString();