投影機中的動畫:嵌套列表

投影機中的動畫:嵌套列表

Beamer 具有[<+->]清單選項,使每個項目單獨顯示。但是,它也使嵌套列表中的項目也單獨顯示。如何使每個嵌套清單顯示為一個整體?

例如,

\begin{itemize}[<+->]
\item A 
  \begin{itemize}
    \item A1
    \item A2
  \end{itemize}
\item B
  \begin{itemize}
    \item B1
    \item B2
  \end{itemize}
\end{itemize}

每個項目單獨出現(IOW,創建了 6 張幻燈片)。我希望所有 A 同時出現,所有 B 同時出現(IOW,PDF 中的兩張投影片)。

附言。我寧願避免顯式<i->註解。

答案1

我不相信你可以。在文檔中(Beamer 使用者指南,v.3.33,第 110 頁第 12.1 節)它說“⟨預設疊加規範⟩由子環境繼承。當然,在子環境中,您可以通過將其設置為 來在本地重置它<1->

我建議你定義自己的innerItemize環境:

\newenvironment{innerItemize}{%
  \begin{itemize}[<1->]%
}{%
  \end{itemize}%
}

\begin{itemize}[<+->]
\item A 
  \begin{innerItemize}
    \item A1
    \item A2
  \end{innerItemize}
\item B
  \begin{innerItemize}
    \item B1
    \item B2
  \end{innerItemize}
\end{itemize}

如果您堅持使用原始程式碼,則可以破解itemize環境以使用外部層級的預設程式碼,然後轉向innerItemize內部層級的等效程式碼。我不認為我會喜歡這樣的駭客,但這就是你要走的路:

\let\oldItemize\itemize
\let\endoldItemize\enditemize
\newcommand{\myItemize}[1][<1->]{\oldItemize[#1]}
\def\endmyItemize{\endoldItemize}
\let\itemize\myItemize
\let\enditemize\endmyItemize

相關內容