Beamer: sempre sobrepõe a primeira tabela no mesmo quadro

Beamer: sempre sobrepõe a primeira tabela no mesmo quadro

Uma pergunta semelhante aEste, mas agora, em vez de sobrepor itens de lista, gostaria de poder sobrepor tableflutuadores. Embora isso funcione para blocos:

\begin{frame}[fragile]

\begin{block}<only@+>{First block}
%stuff
\end{block}

\begin{block}<only@+>{Second block}
%more stuff
\end{block}

\end{frame}

isso não acontece, infelizmente, para tabelas:

\begin{frame}[fragile]

\begin{table}[!h]<only@+>
    \begin{tabular}{} %column specs
    %first table
    \end{tabular}
    \caption{} %some caption
\end{table}

\begin{table}[!h]<only@+>
    \begin{tabular}{} %column specs
    %second table
    \end{tabular}
    \caption{} %some caption
\end{table}

\end{frame}

Saída: ambas as tabelas no mesmo slide com algo sem sentido (¡only@+¿) escrito acima delas. Qual seria a sintaxe correta neste caso? Saúde.

PS: Se também existe uma sintaxe melhor para sobreposição de blocos do que aquela que eu criei, sou todo ouvidos! :) O ideal é que estou procurando algo assim \begin{framebody}[<only@+>]para que tudo (blocos, tabelas itemizeou enumerateambientes) dentro do quadro herde esse comportamento.

Responder1

O seguinte parece alcançar o que se pretendia.

\documentclass{beamer}
\begin{document}
\begin{frame}
\begin{overprint}
\onslide*<1>{
\begin{table}[h]
    \begin{tabular}{cc} %column specs
    f & f%first table
    \end{tabular}
    \caption{1} %some caption
\end{table}
}
%
\onslide*<2>{
\begin{table}[h]
    \begin{tabular}{cc} %column specs
    c & c
    %second table
    \end{tabular}
    \caption{2} %some caption
\end{table}
}
\end{overprint}
\end{frame}
%
\begin{frame}
%
\begin{block}<only@+>{First block}
b
\end{block}
%
\begin{block}<only@+>{Second block}
f
\end{block}
%
\end{frame} 
\end{document}

informação relacionada