0

我正在尝试CountDownTimer在 Android 应用程序活动的 .java 中实现 a 。这CountDownTimer需要能够从用户选择指定的几个不同的预设时间倒计时,我已经通过使用sharedPreferences().

为了连接sharedPreferencesCountDownTimer的时间,以下是我尝试过的两种不起作用的方法:

1)getInt从 开始sharedPreferences,然后定义一个字符串数组,并用数组中的一个值替换long milliseconds( ) ,然后使用获得的字符串。CountDownTimerlongarray[int]valueof()

2) 通过使用{if(sharedPreferences == 123) {int timing = 5000;}}, 但这会失败,因为大括号包含的值int timing无法CountDownTimer读取它,因为它位于包含 . 的那对大括号之外if。值得一提的是,无法将其CountDownTimer移入大括号。

很简单,我正在寻找可编辑的CountDownTimer. 虽然我不是在 Stackoverflow 上要求完整的教程,但如果你能指出我正确的方向,那就太好了。

4

1 回答 1

0

我真的不明白为什么你的方法不起作用,因为我在描绘你的代码时遇到了问题。一般来说,如果你int timing = 0;在 if 子句中声明,它只会在这个 if 子句中可用。因此,要使其在外部可用,您还需要在那里声明它。

我会从这样的事情开始:

int timing = 0;
switch (sharedPreferences) {
    case 123:
        timing = 5000;
    case 124:
        timing = 10000;
    case 125:
        timing = 15000;
    ...
    default:
        timing = 20000;
}
startMyCountdown(timing);
于 2011-01-02T16:00:57.270 回答