Android 自动刷新按钮?

Android 自动刷新按钮?,android,eclipse,refresh,android-button,Android,Eclipse,Refresh,Android Button,我有一个应用程序,只需按一下按钮就可以得到经度和纬度。我想知道如何获取它,这样我就不必每次刷新时都按下按钮来查看位置。我知道,我可以拿出按钮功能,它会自动更新,但我需要它只显示时,按钮被选中打开。有没有一种方法可以在不必一直单击按钮的情况下刷新按钮?与其让按钮调用刷新函数,不如让它将布尔值“isButtonPressed”设置为true。然后,当再次按下按钮(关闭)时,将其设置回false。然后,在应用程序中不断被调用的某个地方(您是否有游戏循环?更新功能?类似的功能?)执行以下操作: 确保将布

我有一个应用程序,只需按一下按钮就可以得到经度和纬度。我想知道如何获取它,这样我就不必每次刷新时都按下按钮来查看位置。我知道,我可以拿出按钮功能,它会自动更新,但我需要它只显示时,按钮被选中打开。有没有一种方法可以在不必一直单击按钮的情况下刷新按钮?

与其让按钮调用刷新函数,不如让它将布尔值“isButtonPressed”设置为true。然后,当再次按下按钮(关闭)时,将其设置回false。然后,在应用程序中不断被调用的某个地方(您是否有游戏循环?更新功能?类似的功能?)执行以下操作:

确保将布尔值初始化为false,按下按钮时将其设置为true,然后再次按下按钮时将其设置为false。您可以这样做:

void ButtonPressedCallback() {
    isButtonPressed = !isButtonPressed;
}
这都是假设你正在运行一个游戏,并且会有一个游戏循环,或者你有某种更新函数,在你的应用程序中被无限调用,直到它退出。如果不是,考虑看Android活动以便做类似的事情。
private Handler mHandler = new Handler() {
    @Override public void handleMessage(Message msg) {
        update(); // The refresh stuffs
        mHandler.sendMessageDelayed(Message.obtain(mHandler, -1), 1L); // wait
    }
}
有了这个,你根本不需要按钮。在我看来,我不知道为什么你有一个按钮,如果你不想点击它

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