[Tex/LaTex] beamer: change individual bullet color in itemize list


Is there a "nice" way to change the color of individual bullet points?
For example imagine a list like this:

  \item A
    \item pro 1
    \item con 1
    \item pro 2
  \item B
    \item pro 3
    \item con 2
    \item con 3

How can I make pro bullets green and cons bullets red?

BTW.: I use the circle innertheme

Best Answer

Here's a more beamer way to do things.

The idea is to make an "action" environment that changes the bullet colour.

\newenvironment{proenv}{\only{\setbeamercolor{local structure}{fg=green}}}{}
\newenvironment{conenv}{\only{\setbeamercolor{local structure}{fg=red}}}{}

  \frametitle{Some pros and cons}
      \item<pro@1-> A pro item
      \item<con@1-> A con item
      \item A neutral  item


The syntax of adding the action requires you to specify the slide range that the action will apply to; you should set this to 1- (which means slide 1 and all further slides) otherwise the colour will change back to the default colour theme if you are uncovering any parts of the slide.

output of code