单击特定网格视图单元格时淡出网格视图

Posted

技术标签:

【中文标题】单击特定网格视图单元格时淡出网格视图【英文标题】:Fade out grid view when a particular grid view cell is clicked 【发布时间】:2012-01-24 19:12:06 【问题描述】:

在我的应用程序中,我的根视图是一个带有单元格的网格视图。当我点击特定单元格时,模态视图控制器将弹出该特定单元格的详细信息。

当我的模态视图存在时如何淡出网格视图?

另外,当我点击网格视图中的任意位置(位于我的模态视图后面)时,如何关闭模态视图?

【问题讨论】:

【参考方案1】:

ios 5 引入了一个新的 UIViewController 方法,presentViewController:animated:completion:(为您链接的文档)当然您可能已经知道 presentModalViewController:animated:(文档说使用 presentViewController 方法代替旧的 presentModalViewController ,但这取决于您是否仅支持 iOS 5 及更高版本)。

您可以将动画设置为 YES 并使用淡入淡出动画,或者将父视图的 alpha 设置为更接近 0.0(稍微“淡化”它)。

UIView 文档有一些关于淡入淡出的注释,包括一些示例代码。看animateWithDuration:animations:completion:

至于关闭模态视图,dismissModalViewControllerAnimated: 不工作吗?

【讨论】:

感谢您的回答。是的,dismissmodalviewcontroller 会起作用。但是当我点击视图的一侧时,我想将其关闭。 将您想要以模态方式呈现的视图嵌入到另一个视图中(使用清晰的颜色),然后您可以检测何时在内容视图之外发生点击(并在此过程中将其关闭)。 感谢您的帮助。你能给我一个参考吗?

以上是关于单击特定网格视图单元格时淡出网格视图的主要内容,如果未能解决你的问题,请参考以下文章

如何在网格视图中为网格单元格着色?

如何从 Flutter 中的网格视图计数访问生成列表中的特定单元格?

如何识别线性布局中一系列表格单元格的视图ID

使用缩放视图填充网格单元

如何在单击列标题时对网格视图中的记录进行排序

Flutter:从网格视图横向滚动的列表视图过渡