0

ボタンを押すだけで経度と緯度を取得できるアプリがあります。場所を確認するために更新するたびにボタンを押す必要がないように、取得方法を知りたいです。ボタン機能を外すことができ、自動的に更新されることは知っていますが、ボタンがオンに選択されている場合にのみ表示する必要があります。ボタンをクリックし続けなくてもボタンを更新できる方法はありますか?

4

2 に答える 2

1

ボタンに更新関数を呼び出させるのではなく、ブール値「isButtonPressed」をtrueに設定します。そして、ボタンをもう一度押す(オフにする)ときに、falseに戻します。次に、継続的に呼び出されるアプリケーションのどこか(ゲームループがありますか?更新機能がありますか?そのようなものですか?)これを実行します:

void Update() {
    if (isButtonPressed) {
        Refresh();
    }
}

ブール値を必ずfalseに初期化し、ボタンが押されたときにtrueに設定し、ボタンが再度押されたときにfalseに設定してください。あなたはこのようにそれを行うことができます:

void ButtonPressedCallback() {
    isButtonPressed = !isButtonPressed;
}

これはすべて、ゲームを実行していてゲームループがあること、またはアプリケーションが終了するまで無限に呼び出されるある種の更新関数があることを前提としています。そうでない場合は、そのようなことを行うためにAndroidのアクティビティを確認することを検討してください。

于 2011-11-21T23:23:28.333 に答える
0
private Handler mHandler = new Handler() {
    @Override public void handleMessage(Message msg) {
        update(); // The refresh stuffs
        mHandler.sendMessageDelayed(Message.obtain(mHandler, -1), 1L); // wait
    }
}

これを使えば、ボタンはまったく必要ありません。私の意見では、クリックしたくないのになぜボタンがあるのか​​ わかりません....

于 2011-11-21T23:31:55.210 に答える