iOS has a nice option in the accessibility menu that allows you to invert the screen colors. Does Android have anything like this?
Since Android 5.0 Lollipop, the feature is built-in as one of accessibility options.
- Open Settings
- Select Accessibility
- Below Display section, toggle Color inversion.
After toggling it for the first time, the "Invert colors" toggle will be added to the quick settings menu.
It's not a built-in feature on Nexus devices, but Samsung devices have this in the accessibility settings.
Inverting all colours isn't much use, as some apps have light text on a dark background, and some apps have dark text on a light background. Making text easier to read is better achieved by increasing the text size, which is an option on all Android devices (also in the accessibility settings).
If your device is rooted and your Android version is at least Android 4.4 KitKat, you could try CF.lumen (free, pro version also available). The app is actually a screen filter which supports automation based on time/brightness, but it also supports color inversion.
Several filters are provided. Those named after a color (red, green, blue, amber, salmon) do not limit the display to those colors, but convert the displayed image to grayscale first, then display that image in levels of the selected color. This preserves details that would otherwise be lost. Grayscale, invert colors, temperature adjustment and custom R/G/B adjustment filters are also provided.
For basic usage, set the Master filter mode to Invert.
Disclaimer: I don't have any relation with the app, its company and their developers. I just found this when trying to answer the same issue on KitKat.
For Samsung devices with Android Lollipop 5.1.1:
Settings → Personalization → Accessibility → Vision → Negative colors