Umfang oder \pause überschreiben?

Umfang oder \pause überschreiben?

Ich habe einige Vorlesungsfolien mit mehrteiligen Aufgaben. Ich möchte, dass die Studenten die gesamte Aufgabe sehen und dann die Antworten Schritt für Schritt ausfüllen können. Das ist machbar, solange das auszufüllende Material in schöne kleine Abschnitte aufgeteilt werden kann:

\documentclass{beamer}
\begin{document}

\begin{frame}\onslide<+->{}
This problem has three parts.
  \begin{enumerate}
    \item What is the answer to part 1?\\
      \onslide<+->{First interpret the question.}\onslide<+->{ Then do some work.}\onslide<+->{ Now we can answer the question, and the answer is} \onslide<+->{ 42.}
    \item What is the answer to part 2?\\
      \onslide<+->{This problem is easy, and the answer is }\onslide<+->{0.}
    \item What is the answer to part 3?\\
      \onslide<+->{You'll have to figure this one out for yourself.}
  \end{enumerate}
\end{frame}
\end{document}

Diese Lösung ist ziemlich elegant (bis auf den Anfangsbuchstaben \onslide<+->zum Erhöhen des Zählers). Leider bricht sie zusammen (oder wird zumindest sehr chaotisch), wenn ich mitten in einer Umgebung pausieren möchte, wie z. B. bei einer Ausrichtung:

\documentclass{beamer}
\usepackage{amsmath}
\begin{document}
%% Standard (?) fix to make \pause work at all in align environment
\mode<presentation>{\setbeamercovered{transparent=0}}
\makeatletter
\def\beamerorig@set@color{%
  \pdfliteral{\current@color}%
  \aftergroup\reset@color
}
\def\beamerorig@reset@color{\pdfliteral{\current@color}}
\makeatother
%%

\begin{frame}
This problem has three parts.
  \begin{enumerate}
    \item What is the answer to part 1?\\\pause
      First interpret the question. Then calculate
      \begin{align*}
        \Pr[X\in A] &=\pause \frac{1}{2^n} \sum_{i=0}^n \binom{n}{i} \\ 
        &=\pause 1
      \end{align*}
    \item What is the answer to part 2?\\\pause
      More answers, \pause with more parts.
    \item What is the answer to part 3?\\\pause
      ...
  \end{enumerate}
\end{frame}
\end{document}

Wenn ich es auf diese Weise mache, treten die späteren Teile des Problems natürlich erst auf, wenn wir den ersten Teil fertiggestellt haben.

Ich könnte den früheren Ansatz wahrscheinlich zum Laufen bringen, indem ich die Antwort in noch kleinere Abschnitte aufteile und dann sicherstelle, dass der Text davor und der erste Teil aligngleichzeitig angezeigt werden, aber das scheint eine Menge manuelles Herumfummeln von Fall zu Fall zu erfordern. Ich würde denken, dass die richtige Lösung darin besteht, entweder die Wirkung von \pauseauf einen gewissen Umfang innerhalb der Antwort selbst zu beschränken oder sie zu überschreiben, indem das spätere Material, das ich am Anfang sichtbar haben möchte, undurchsichtig gemacht wird (ich glaube, dass der Fix für alignbereits dafür sorgt, dass der Text immer da ist, nur transparent).

Gibt es eine gute Möglichkeit, dies zu tun?

Antwort1

Ich habe letztendlich den folgenden Workaround mit dem (zugegebenermaßen sehr hackigen) \alwaysBefehl verwendet, der den Folienzähler für seinen Inhalt zurücksetzt:

\documentclass{beamer}
\usepackage{amsmath}
%% Standard (?) fix to make \pause work at all in align environment
\mode<presentation>{\setbeamercovered{transparent=0}}
\makeatletter
\def\beamerorig@set@color{%
  \pdfliteral{\current@color}%
  \aftergroup\reset@color
}
\def\beamerorig@reset@color{\pdfliteral{\current@color}}
\makeatother
%%

%% \always{} command ensures that its contents are visible on all slides of the frame.
\newcounter{beamerpausessave}
\newcommand{\always}[1]{\setcounter{beamerpausessave}{\value{beamerpauses}}
    \setcounter{beamerpauses}{0}\pause #1 
    \setcounter{beamerpauses}{\value{beamerpausessave}}\addtocounter{beamerpauses}{-1}\pause}

\begin{document}
\begin{frame}
This problem has three parts.
  \begin{enumerate}
    \always{\item What is the answer to part 1?\\}\pause
      First interpret the question. Then calculate
      \begin{align*}
        \Pr[X\in A] &=\pause \frac{1}{2^n} \sum_{i=0}^n \binom{n}{i} \\ 
        &=\pause 1
      \end{align*}
    \always{\item What is the answer to part 2?\\}\pause
      More answers, \pause with more parts.
    \always{\item What is the answer to part 3?\\}\pause
      ...
  \end{enumerate}
\end{frame}

\end{document}

Ich verstehe immer noch nicht wirklich, warum diese spezielle Kombination aus Einstellung beamerpausesund Verwendung \pausezufällig funktioniert hat, wenn nichts Einfacheres funktioniert hat.

verwandte Informationen