Schaltfläche zum automatischen Aktualisieren?

  • Ich habe eine App, die Längen- und Breitengrade auf Knopfdruck abruft. Ich möchte wissen, wie man es erhält, so dass ich nicht jedes Mal die Taste drücken muss, wenn ich aktualisieren möchte, um den Standort zu sehen. Ich weiß, dass ich die Tastenfunktion herausnehmen kann, und es wird automatisch aktualisiert, aber ich muss es nur anzeigen, wenn die Schaltfläche aktiviert ist. Gibt es eine Möglichkeit, die Schaltfläche zu aktualisieren, ohne dass Sie darauf klicken müssen?

    22 November 2011
    Christian
2 answers
  • Anstatt die Schaltfläche eine Aktualisierungsfunktion aufrufen zu lassen, muss der boolesche Wert "isButtonPressed" auf "true" gesetzt werden. Wenn Sie die Taste erneut drücken (ausgeschaltet), setzen Sie sie wieder auf false. Dann machen Sie irgendwo in Ihrer Anwendung, die ständig aufgerufen wird (haben Sie eine Update-Funktion für die Spieleschleife? Etwas Ähnliches?) Folgendes:

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

    Stellen Sie sicher, dass Sie den booleschen Wert auf false initialisieren, den Wert auf true setzen, wenn Sie die Taste drücken, und dann auf false, wenn Sie die Taste erneut drücken. Das können Sie so machen:

     void ButtonPressedCallback() {
        isButtonPressed = !isButtonPressed;
    }
     

    Dies alles setzt die Annahme voraus, dass Sie ein Spiel ausführen und dies tun würden über eine Spielschleife verfügen oder eine Aktualisierungsfunktion haben, die in Ihrer Anwendung unendlich oft aufgerufen wird, bis sie beendet wird. Wenn nicht, ziehen Sie die Android-Aktivitäten in Betracht, um so etwas zu tun.

    22 November 2011
    Andrew Rasmussen
  •  private Handler mHandler = new Handler() {
        @Override public void handleMessage(Message msg) {
            update(); // The refresh stuffs
            mHandler.sendMessageDelayed(Message.obtain(mHandler, -1), 1L); // wait
        }
    }
     

    Damit brauchen Sie überhaupt keinen Button. Meiner Meinung nach weiß ich nicht, warum Sie eine Schaltfläche haben, wenn Sie nicht darauf klicken möchten.

    22 November 2011
    AedonEtLIRAhassanadnan