Basically, you have an online, watch-only wallet. This wallet does not contain your private key(s) or xpriv, but only your addresses or xpub (or ypub). The watch-only wallet is online, thus it can scan the new blocks for unspent outputs funding addresses that can be derived from your xpub.
The online wallet can be used to generate new transactions spending these unspent outputs, but since the watch-only wallet does not contain your private key, it cannot be used to sign these transactions.
That's why you also need an offline (air gapped) machine. This offline wallet does contain your private keys (or xpriv/ypriv). You need to generate your unsigned transaction with the online wallet, transfer it to the offline wallet for signing, and then back to the online wallet for broadcasting. The offline wallet does not need to be sync'ed, it's only used for signing premade transactions.
I've tried this setup with core and electrum in the past. Electrum has a how-to on it's official site:
http://docs.electrum.org/en/latest/coldstorage.htmlIf you have any questions, don't hesistate to ask them