[Tex/LaTex] Colored blocks for numbered theorems in beamer

beamerblockcolornumberingtheorems

Input:

\documentclass{beamer}
\usetheme{Boadilla}
\usecolortheme{whale}
\usefonttheme{professionalfonts}

\setbeamertemplate{theorems}[numbered] 

\begin{document}

\section{First section} 
\begin{frame} 
\frametitle{Theorems} 
\begin{definition} 
    Text 
\end{definition} 
\begin{theorem} 
    Text
\end{theorem} 
\begin{lemma} 
    Text
\end{lemma}
\begin{theorem} 
    Text
\end{theorem} 
\begin{example} 
    Text
\end{example} 
\end{frame} 

\end{document}

Output:

enter image description here

Question: Note that example's blocks are green and all other blocks are blue. How to define a specific color for each kind of block? For example, red for theorems and yellow for definitions. It is important to keep the automatic consecutive numbering.

Best Answer

This is what you need to put in your preamble

\usepackage{etoolbox}% new package to be loaded
\AtBeginEnvironment{theorem}{% set of commands to be added
    \setbeamercolor{block title}{fg=white,bg=orange}% colors to change
    \setbeamercolor{block body}{fg=black,bg=yellow}% colors to change
}
\AtBeginEnvironment{proof}{%
    \setbeamercolor{block title}{fg=green,bg=red}
    \setbeamercolor{block body}{fg=black,bg=purple}

}

Complete MWE

\documentclass{beamer}
\usetheme{Boadilla}
\usecolortheme{whale}
\usefonttheme{professionalfonts}
\usepackage{etoolbox}
\setbeamertemplate{theorems}[numbered] 
\AtBeginEnvironment{theorem}{%
    \setbeamercolor{block title}{fg=white,bg=orange}
    \setbeamercolor{block body}{fg=black,bg=yellow}
}
\AtBeginEnvironment{proof}{%
    \setbeamercolor{block title}{fg=green,bg=red}
    \setbeamercolor{block body}{fg=black,bg=purple}
}

\setbeamercolor{normal text}{fg=black} 

\begin{document}

\section{First section} 
\begin{frame} 
\frametitle{Theorems}
\begin{proof} 
    Text 
\end{proof} 
\begin{definition} 
    Text 
\end{definition} 
\begin{theorem} 
    Text
\end{theorem} 
\begin{lemma} 
    Text
\end{lemma}
\begin{theorem} 
    Text
\end{theorem} 
\begin{example} 
    Text
\end{example} 
\end{frame} 

\end{document}

enter image description here

Related Question