我找不到适用\only<n>{content}
于整个 itemize 环境的方法。
我的第一个方法是:
\only<1>{\begin{itemize}
\item A
\end{itemize}}
但我在编译时收到多个错误消息。我也尝试了在网上找到的多种变体。但我找不到隐藏(不占用空间)整个列表的方法。
编辑:
这是一个最小的非工作示例,在阅读了@Schrödinger's cat 的评论后,我意识到当我使用 lstMakeShortInline 时会出现问题,在本例中是。|First|
没有它,它也可以工作。
\documentclass{beamer}
\usepackage{listings}
\lstMakeShortInline[language=C,basicstyle=\ttfamily]|
\begin{document}
\begin{frame}[fragile]{Title}
\begin{columns}[T]
\column{0.55\textwidth}
\column{0.45\textwidth}
\only<1>{
\begin{itemize}
\item My code: |First|
\end{itemize}
}
\only<2>{
\begin{itemize}
\item Second
\end{itemize}
}
\end{columns}
\end{frame}
\end{document}
答案1
使用onlyenv
环境而不是\only
宏:
\documentclass{beamer}
\usepackage{listings}
\lstMakeShortInline[language=C,basicstyle=\ttfamily]|
\begin{document}
\begin{frame}[fragile]{Title}
\begin{columns}[T]
\column{0.55\textwidth}
\column{0.45\textwidth}
\begin{onlyenv}<1>
\begin{itemize}
\item My code: |First|
\end{itemize}
\end{onlyenv}
\begin{onlyenv}<2>
\begin{itemize}
\item Second
\end{itemize}
\end{onlyenv}
\end{columns}
\end{frame}
\end{document}