Tengo el siguiente código que funciona sin errores:
\documentclass{beamer}
\usetheme{Boadilla}
\usepackage[frenchb]{babel}
\begin{document}
\begin{frame}
\begin{tabular}{ll|ll}
\onslide<1->{a & b & c & d}
\onslide<2->{
\\ \hline
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& Line 2 right
}
\\ \hline
\end{tabular}
\end{frame}
\end{document}
Sin embargo, cambié Line 2 right
a \multicolumn{2}{l}{Line 2 right}
, ya no se compiló. Luego lo eliminé onslide<2->
y se compiló nuevamente, pero sin efecto de superposición. Entonces parece que el 3 multicoulmn
no funciona bien con onslide
, ¿alguien sabe cómo solucionarlo?
...
\onslide<2->{
\\ \hline
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& \multicolumn{2}{l}{Line 2 right} \\\hline
}
\onslide<3->{
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& \multicolumn{2}{l}{Line 2 right} \\\hline
}
...
Respuesta1
Agregue \\
(y \hline
) al final de la fila dentro \onslide
:
\documentclass{beamer}
\usetheme{Boadilla}
\usepackage[frenchb]{babel}
\begin{document}
\begin{frame}
\begin{tabular}{ll|ll}
\onslide<1->{a & b & c & d}
\onslide<2->{
\\ \hline
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& \multicolumn{2}{l}{Line 2 right} \\\hline
}
\end{tabular}
\end{frame}
\end{document}
Sin embargo, lea la Sección23.5 Descubrir una tabla por filasdel beamer
manual; un pequeño extracto
Cuando desee descubrir una tabla línea por línea, se encontrará con todo tipo de problemas si hay líneas verticales y horizontales en la tabla. La razón es que la primera línea vertical en el extremo izquierdo se dibuja incluso antes de leer la línea (y por lo tanto, en particular, antes de que
\onslide
se pueda leer cualquier comando). Sin embargo, colocar un\pause
o\uncover
al final de la línea anterior tampoco es útil ya que suprimirá la línea horizontal debajo de la última línea descubierta.
(Luego viene un ejemplo que muestra una posible forma de descubrir tablas).
Con la nueva edición de la pregunta original:
\documentclass{beamer}
\usetheme{Boadilla}
\usepackage[frenchb]{babel}
\begin{document}
\begin{frame}
\begin{tabular}{ll|ll}
\onslide<1->{a & b & c & d}
\onslide<2->{
\\ \hline
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& \multicolumn{2}{l}{Line 2 right} \\\hline
}
\onslide<3->{\\[-\normalbaselineskip]
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& \multicolumn{2}{l}{Line 2 right} \\\hline
}
\end{tabular}
\end{frame}
\end{document}
El final de la segunda fila está dentro \onslide<2>
, por lo que \onslide<3>
no lo ve a tiempo; agregue una nueva línea con un espacio negativo al principio de la fila, como muestra mi ejemplo.