0

私は Android を学んでおり、初心者なので、最初のアプリとしてストップウォッチを作成するのが適切であると考えました。長い散歩を測定したいので、私も必要です。

私はボタンとそのすべてのものを使ってその部分をやりましたが、今度はテキストビューを更新するために時間、分、秒を取得する方法がわかりませんか?

また、各メソッドの呼び出しを取得するにはどうすればよいのだろうか、30 分ですか?

いくつかのガイダンスとヒントを大切にしてください!ありがとう!

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 に答える