Tenho 3 partes em um tabular
, quero onslide1-
que seja sempre exibido. Após 1 clique, quero only2
ser mostrado; depois de outro clique, na posição de only2
, quero only3-
substituir only2
para sempre; após outro clique, onslide4-
aparecerá. O código é o seguinte:
\documentclass{beamer}
\usetheme{Boadilla}
\usepackage[frenchb]{babel}
\begin{document}
\begin{frame}
\begin{tabular}{ll|ll}
\onslide<1->{
\\\hline onslide1- \\\hline
}
\onslide<2->{
\only<2>{
\\[-2.8ex]
only2\\\vspace{3cm}\\only2
\\\hline
}%
\only<3->{
\\[-2.8ex]
only3-\\\vspace{3cm}\\only3-
\\\hline
}}
\onslide<4->{
\\\hline onslide4- \\\hline
}
\end{tabular}
\end{frame}
O problema é quando onslide1-
aparece logo no início, não sai do lugar para only2
o only3-
que vai aparecer depois. Tento adicionar um \onslide<2->
, porque normalmente \onslide
reserva a vaga, mas aqui não funciona... Alguém sabe como resolver isso?
PS: Percebo que o código a seguir, que é mais simples que o anterior, tem o mesmo problema:
\begin{frame}
\begin{tabular}{ll|ll}
\onslide<1->{onslide1\\}
\only<2>{only2\\}%
\only<3->{only3-\\}
\onslide<4->{onslide4-\\}
\end{tabular}
\end{frame}
No entanto, o código a seguir não apresenta esse problema. Então parece que é por causa da posição de \\
, mas preciso sim \\\hline
no código inicial.
\begin{frame}
\begin{tabular}{ll|ll}
\onslide<1->{onslide1}\\
\only<2>{only2}%
\only<3->{only3-}\\
\onslide<4->{onslide4-}\\
\end{tabular}
\end{frame}
Responder1
Usar overlayarea
:
\documentclass{beamer}
\usetheme{Boadilla}
\usepackage[frenchb]{babel}
\begin{document}
\begin{frame}
\begin{overlayarea}{7cm}{7cm}
\begin{tabular}{ll|ll}
\onslide<1->{%
\\\hline onslide1- \\\hline
}
\only<2>{%
\\[-2.8ex]
only2\\\vspace{3cm}\\only2
\\\hline
}%
\only<3->{%
\\[-2.8ex]
only3-\\\vspace{3cm}\\only3-
\\\hline
}
\onslide<4->{%
\\\hline onslide4- \\\hline
}
\end{tabular}
\end{overlayarea}
\end{frame}
\end{document}
Responder2
Tente com \visible
ou \uncover
em vez de \only
e \onslide
.