One of the features of both icomplete and ivy is to provide an 'alternative' minibuffer display function. Configurations for icomplete do not affect configurations for Ivy and vice-versa. Although, (at least) Ivy is not really designed to work with another completion framework simultaneously, as it simply defines an alternative completing-read-function
.
Furthermore, Icomplete uses Emacs its default completion system which is configured via Emacs its default completion variables while Ivy defines its own completion system, which is configured via the ivy-re-builders-alist
.
Therefore, the Ivy completion styles are not affected by the Icomplete completion styles and vice-versa.
If you would like to read more about Emacs completion systems, then I would recommend taking a look at the README of the Vertico package. Of the currently available completion frameworks, Vertico will probably become the most popular one in the future. However, for beginners, I would currently probably still recommend using Ivy, which I am using myself, as it is fully configured 'out of the box'. Simply try Ivy, and if you do not like it, then you can easily switch to Vertico or any other completion framework. But at least for Vertico expect to spend some time on configuration. Another popular completion framework is Helm, which is probably the most powerful and most heavyweigth completion framework and is also a perfect alternative to Ivy.
Finally, I think what I am writing here is correct (as I have looked into it before), but I did not double-check it.