I want to change the bullet point symbol of certain items in my list after a certain slide.
A solution to a similar problem, but without nestled \itemize
environments, was posted here: https://tex.stackexchange.com/questions/424011/change-beamer-itemize-symbol-and-overlay
The list looks like this:
\documentclass[9pt,aspectratio=169]{beamer}
\newenvironment{redenv}{\only{\setbeamercolor{local structure}{fg=red}}}{}
\begin{itemize}
\item<1-|red@3-> Item 1
\item Item 2
\begin{itemize}
\item<2-|red@3-> Item 3
\end{itemize}
\item Item 4
\end{itemize}
\end{document}
I want to change the symbol for Item 1
and Item 3
after a certain pause. This solution works only for Item 1
, but not Item 3
.
Edit:
Turns out I copied the example wrongly here, but not in my actual document. Instead I found the real culprit: My document uses a beamercolor.sty sheet that defines the color of the bullet points:
\setbeamercolor{item}{parent=local structure}
\setbeamercolor{subitem}{parent=item, fg=gray}
\setbeamercolor{subsubitem}{parent=subitem}
So, when I delete the fg=gray
, it works as indended. But I want the gray color as default and only change the color in places I choose. How can reconcile both coloring methods?
You are missing the fg=
in your colour definition:
\documentclass[9pt,aspectratio=169]{beamer}
\newenvironment{redenv}{\only{\setbeamercolor{local structure}{fg=red}}}{}
\begin{document}
\begin{frame}
\begin{itemize}
\item<1-|red@3-> Item 1
\item Item 2
\begin{itemize}
\item<2-|red@3-> Item 3
\end{itemize}
\item Item 4
\end{itemize}
\end{frame}
\end{document}
Or if you don't mind that the text also changes colour, you could use alert
:
\documentclass[9pt,aspectratio=169]{beamer}
\begin{document}
\begin{frame}
\begin{itemize}
\item<1-|alert@3-> Item 1
\item Item 2
\begin{itemize}
\item<2-|alert@3-> Item 3
\end{itemize}
\item Item 4
\end{itemize}
\end{frame}
\end{document}