0

我正在学习 Android,因为我是初学者,所以我认为制作某种秒表作为我的第一个应用程序可能是合适的。我也需要一个,因为我想测量我的长途步行。

我已经用按钮和所有这些东西完成了部分,现在我不确定如何让这个时间得到小时、分钟和秒来更新 textView?

我也想知道我应该怎么做才能调用一个方法,比如每个 30 分钟?

Preciate一些指导和提示!谢谢!

4

1 回答 1

1

只需像我们在这里一样为该任务创建一个线程: http ://www.itcuties.com/android/how-to-create-android-splash-screen/

让我们稍微修改一下我们的代码:)

public class MainActivity extends Activity {

    private static String TAG = MainActivity.class.getName();
    private static long SLEEP_TIME = 1; // Sleep for some time

    private TextView hoursText;
    private TextView minutesText;
    private TextView secondsText;

    // TODO: time attributes

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        hoursText = (TextView) findViewById(R.id.hoursView);
        minutesText = (TextView) findViewById(R.id.minutesView);
        secondsText = (TextView) findViewById(R.id.secondsView);

        // TODO: Get start time here

        // Start timer and launch main activity
        ClockUpdater clockUpdater = new ClockUpdater();
        clockUpdater.start();
    }

    private class ClockUpdater extends Thread {
        @Override
        /**
         * Sleep for some time and than start new activity.
         */
        public void run() {
            try {
                // Sleeping
                while (true) {
                    Thread.sleep(SLEEP_TIME * 1000);
                    // TODO: Get current time here

                    // current time - start time ...

                    // Set new values
                    hoursText.setText("10"); // don't know if you walk this long
                                                // :)
                    minutesText.setText("10");
                    secondsText.setText("10");
                }

            } catch (Exception e) {
                Log.e(TAG, e.getMessage());
            }

        }
    }
}
于 2012-09-02T13:57:34.817 回答