我有 3 個部分tabular
,我希望onslide1-
始終顯示。 1次點擊後,我想only2
被展示;再次點擊後,在 的位置only2
,我想永遠only3-
替換;only2
再次點擊後,onslide4-
將會出現。程式碼如下:
\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}
問題是當onslide1-
一開始顯示 時,它沒有留下稍後出現的only2
位置。only3-
我嘗試添加一個\onslide<2->
,因為通常\onslide
會保留該位置,但在這裡不起作用...有人知道如何解決這個問題嗎?
PS:我意識到下面的程式碼比以前更簡單,也有同樣的問題:
\begin{frame}
\begin{tabular}{ll|ll}
\onslide<1->{onslide1\\}
\only<2>{only2\\}%
\only<3->{only3-\\}
\onslide<4->{onslide4-\\}
\end{tabular}
\end{frame}
但是,下面的程式碼沒有這個問題。所以看來這是由於 的位置造成的\\
,但我確實需要\\\hline
在初始程式碼中。
\begin{frame}
\begin{tabular}{ll|ll}
\onslide<1->{onslide1}\\
\only<2>{only2}%
\only<3->{only3-}\\
\onslide<4->{onslide4-}\\
\end{tabular}
\end{frame}
答案1
使用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}
答案2
嘗試用\visible
or\uncover
代替\only
and \onslide
。