\pause
我想使用命令(或类似的等效命令)更改框架中项目符号列表的颜色\onslide
,即我的列表首先显示为黑色,然后我希望它在下一步中变为灰色。
我在做什么 :
\begin{center}
\color<2->{light-gray}
\begin{itemize}
\item Bruit
\item Fragilité mécanique
\item Entretient
\item Jeu dans les engrenages
\end{itemize}
\end{center}
结果没问题(文本在第二步时会改变颜色),但对于不变色的项目符号则不行。因此,我尝试通过添加以下行来解决这个问题:
\onslide<2-> \setbeamercolor*{item}{fg=light-gray} \onslide<1->
但是项目符号颜色的变化在两个步骤中都出现,而不仅仅是在步骤 2 中。我推测这样的命令不适用于\onslide
,因此我寻找一个想法来仅在第二步更改项目符号颜色。
这是一个最小的工作示例:
\documentclass[10pt, compress, aspectratio=1610]{beamer}
\usepackage{color}
\definecolor{light-gray}{gray}{0.8}
\newcommand{\itemcolor}[1]{% Update list item colour
\renewcommand{\makelabel}[1]{\color{#1}\hfil ##1}}
\begin{document}
\begin{frame}
\begin{center}
%\onslide<2-> \setbeamercolor*{item}{fg=light-gray}
%\onslide<1->
\begin{itemize}
\color<2->{light-gray}
\item Item1
\item Item2
\item Item3
\item Item4
\end{itemize}
\end{center}
\end{frame}
\end{document}
答案1
只需使用\only<2>{ ... }
即可。这应该可以解决问题。
\documentclass[10pt, compress, aspectratio=1610]{beamer}
\usepackage{color}
\definecolor{light-gray}{gray}{0.8}
\newcommand{\itemcolor}[1]{% Update list item colour
\renewcommand{\makelabel}[1]{\color{#1}\hfil ##1}}
\begin{document}
\begin{frame}
\begin{center}
\only<2>{\setbeamercolor*{item}{fg=light-gray}}
\begin{itemize}
\color<2->{light-gray}
\item Item1
\item Item2
\item Item3
\item Item4
\end{itemize}
\end{center}
\end{frame}
\end{document}