This is no exact dup of Should a toggle button show its current state or the state to which it will change?
Question is: I´m displaying a switch / toggle button on a mobile device, which represents the status of a system on a network server (e.g. subscribing to push notifications).
What is the best practice to display the status of the button and handle the point in time for the network connection?
Display the 'user wish' and manage the server connection etc. in the background. The connection does not have to be established directly, it is only guaranteed to happen sometime in the nearer future. This has the downside that there is a timeframe, where the toggle does not show the actual state of the system (e.g. when the connection fails and the client has to retry).
Display the actual state of the system, i.e. user toggles the button, show some progress dialog, connection is established, only set the button to the new state, when the system is also in the considered state.
A mix of both, e.g. setting the button instantly to the wished state, start connection, but then instantly informing the user and resetting the button, if the connection failed etc.
Looking forward to hearing some opinions!