やや遅い応答ですが、今日はこれを自分で解決しようとしていました。ビューのテキストを解析するだけで終わりました:
// Expects a string in the form MM:SS or HH:MM:SS
public static int getSecondsFromDurationString(String value){
String [] parts = value.split(":");
// Wrong format, no value for you.
if(parts.length < 2 || parts.length > 3)
return 0;
int seconds = 0, minutes = 0, hours = 0;
if(parts.length == 2){
seconds = Integer.parseInt(parts[1]);
minutes = Integer.parseInt(parts[0]);
}
else if(parts.length == 3){
seconds = Integer.parseInt(parts[2]);
minutes = Integer.parseInt(parts[1]);
hours = Integer.parseInt(parts[0]);
}
return seconds + (minutes*60) + (hours*3600);
}
したがって、view.getText().toString() で getSecondsFromDurationString を呼び出すと、合計経過時間が秒単位で表示されます (私のアプリケーションはある種のストップ ウォッチなので、一時停止して再開できます)。
それが役に立てば幸い。