首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在向下滚动时保存回收视图中更改的按钮颜色

在向下滚动时保存回收视图中更改的按钮颜色可以通过以下步骤实现:

  1. 首先,需要在回收视图中为每个按钮设置一个唯一的标识符(ID)或者使用按钮的索引来标识。
  2. 在按钮的点击事件中,记录按钮的颜色更改。可以使用一个全局的数据结构(如字典或数组)来保存按钮的ID和对应的颜色。
  3. 当滚动时,回收视图会重用之前的按钮。在重用之前的按钮之前,需要检查该按钮是否有颜色更改的记录。可以通过按钮的ID或索引来查找记录。
  4. 如果找到了颜色更改的记录,将记录中保存的颜色应用到重用的按钮上。

下面是一个示例代码,演示如何实现上述步骤:

代码语言:txt
复制
// 定义一个全局的字典来保存按钮的颜色更改记录
var buttonColors: [Int: UIColor] = [:]

// 按钮点击事件
@IBAction func buttonTapped(_ sender: UIButton) {
    // 记录按钮的颜色更改
    buttonColors[sender.tag] = sender.backgroundColor
}

// 回收视图的代理方法
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "ButtonCell", for: indexPath) as! ButtonCell
    
    // 检查按钮是否有颜色更改的记录
    if let color = buttonColors[cell.button.tag] {
        cell.button.backgroundColor = color
    } else {
        // 如果没有记录,则使用默认颜色
        cell.button.backgroundColor = UIColor.gray
    }
    
    return cell
}

在这个示例中,我们使用了一个字典 buttonColors 来保存按钮的颜色更改记录,键为按钮的标识符(这里使用了按钮的 tag 属性),值为按钮的颜色。在按钮的点击事件中,记录按钮的颜色更改。在回收视图的代理方法中,检查按钮是否有颜色更改的记录,如果有,则将记录中保存的颜色应用到重用的按钮上。

这个方法可以适用于任何回收视图,无论是 UICollectionView 还是 UITableView。根据具体的需求,可以根据按钮的标识符或索引来保存和检查颜色更改的记录。

腾讯云相关产品和产品介绍链接地址:

请注意,以上链接仅为示例,具体的产品选择应根据实际需求和情况进行评估和选择。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

SceneKit 场景编辑器-为您AR体验构建3D舞台

您可以通过捏住触控板或选项+向上和向下滚动鼠标来放大设计。 操纵器 如果选择模型,现在可以看到操纵器。您可以使用它来旋转或移动模型。箭头表示坐标系。绿色箭头是Y轴,红色是X轴,蓝色箭头代表Z轴。...它们之间弧度是一次用一个轴旋转对象。 口控件 口下方是口控件。在这个栏上,我们可以改变到不同视角。我经常将它设置为前面,因为这是在屏幕上添加模型起始角度。...如果场景附带动画,您可以通过单击“ 播放”按钮进行预览。 场景图视图 打开场景,通常会隐藏场景图视图。要显示它,请单击口下方左下方小窗口图标,在控件旁边。在这里,您可以看到组成场景所有部分。...圆柱体颜色 对于颜色,它与案例相同。转到“ 材质”检查器,将“ 着色”更改为“ Blinn”,对于“ 漫反射”,选择从案例中保存颜色。 圆柱体旋转 皇冠方向不对,我们需要旋转它。...转到“ 材质”检查器,将“ 着色”更改为“ Blinn”,单击“ 漫反射”,使用颜色选择器从Apple网站中选择图像手镯中颜色

5.5K20

Framer 使用滚动变体创建动画

滚动变体”(Scroll Variants) 允许您在页面上进入部分上更改组件活动变体。...您可以使用“滚动变体”使导航栏在用户向下滚动页面更改其外观,例如更改其背景颜色或调整元素位置。或者在向下滚动页面突出显示活动部分侧边栏。...Demo1: 实现一个滚动到不同部分,修改导航栏背景颜色效果 创建导航栏组件 第一步就是创建一个导航栏组件 可以直接按下命令 K 并调出快捷菜单。...触发时机呢,就是ViewPort, 顶部,中部,底部到达浏览器窗口顶部 触发次数: 重复重复,即滚动下去触发一次, 滚动上去也依然会触发一次. To状态,组件变化....当黑色部分在浏览器口中,导航栏使用默认组件 当白色部分在浏览器口中,导航栏使用黑色背景导航栏组件 当黄色部分在浏览器口中,导航栏使用黄色背景导航栏组件 效果: 我们可以看到 当滚动不到不同部分时候

8110
  • iOS 9人机界面指南(四):UI元素(上) - 腾讯ISUX

    在屏幕处于同一方向,最好不要改变不同屏上导航栏背景图片、颜色和透明度。 确保你自定义返回按钮外观与操作仍然像一个返回按钮。...,你还可以使用系统提供编辑、取消、保存、完成、撤销、重做等等按钮来支持编辑或其它操作。...书签按钮可以让用户方便地找到他们需要内容。例如在地图中搜索,用户可以通过书签按钮快速选中书签地址、最近搜索记录、或通讯录。 ?...当用户在视图中拖拽内容,内容随之滚动;当用户轻扫屏幕,内容将快速滚动——直到用户再次触摸屏幕或内容已经到达底部停止。...文本视图: 是一个可定义为任何高度矩形 当内容太多超出视图边框,文本视图支持滚动 支持自定义字体、颜色和对齐方式(默认情况下,文本视图会以左对齐黑色系统字体显示) 可以支持用户编辑,当用户轻击文本视图内部

    10.1K51

    提高效率 |ArcGIS Pro 中所有快捷键一网打尽

    Alt + 单击内容窗格中图层 缩放至图层范围。 Z 持续缩放。 按住 Z 键同时拖动鼠标按钮,以将活动工具更改为连续放大或缩小模式。 X + 单击 逐步缩小。 单击以从数据逐步缩小。...Alt + 单击内容窗格中图层缩放至图层范围。 Z持续缩放。按住 Z 键同时拖动鼠标按钮,以将活动工具更改为连续放大或缩小模式。X + 单击逐步缩小。单击以从数据逐步缩小。V + 拖动围绕一点旋转。...当照相机移动,调整鼠标指向以设置您要行驶方向。可以选择使用 W 和 S 键更改方向。 左箭头键和右箭头键 从视图中心向左或向右移动照相机。...模式 用于模型键盘快捷键 键盘快捷键 操作 Ctrl+N 当模型视图处于活动状态,创建一个新模型。 Ctrl+S 保存活动模型。 Ctrl+Shift+S 使用其他名称和位置保存活动模型。...Ctrl+Alt+G 在视频窗格中显示地图要素。 这与显示要素视频播放器工具相同。 Ctrl+Alt+I 在活动视频窗格上应用反转像素颜色转换。 这与反转颜色视频播放器工具相同。

    1.1K20

    Win10 快捷键大全(史上最全)「建议收藏」

    + 单击某个任务栏按钮 以管理员身份打开应用 Shift + 右键单击某个任务栏按钮 显示该应用窗口菜单 Shift + 右键单击某个已分组任务栏按钮 显示该组窗口菜单 Ctrl + 单击某个已分组任务栏按钮...应用中键盘快捷方式 在许多应用(照片、Groove 和地图)中,当你将鼠标指针悬停在某个按钮,工具提示中就会显示快捷方式。...显示或隐藏网格线 Ctrl + I 将所选文本改为斜体 Ctrl + N 创建新图片 Ctrl + O 打开现有图片 Ctrl + P 打印图片 Ctrl + R 显示或隐藏标尺 Ctrl + S 将更改保存到图片...空格键(查看照片) 显示或隐藏命令 空格键(查看视频) 播放或暂停视频 箭头键(在集锦中) 向上、向下、向左或向右滚动 左箭头或右箭头键(位于单个项目或幻灯片放映上) 显示下一个或上一个项目 箭头键(...Ctrl + J 两端对齐文本 Ctrl + L 向左对齐文本 Ctrl + N 创建新文档 Ctrl + O 打开现有文档 Ctrl + P 打印文档 Ctrl + R 向右对齐文本 Ctrl + S 将更改保存到文档

    16.6K30

    excel常用操作大全

    按下鼠标左键并向下拖动直到结束。当你放开鼠标左键,一切都变了。 如果您在原始证书编号后添加19,请在B1单元格中写入:=A1 '13 ',然后按回车键。...2.如何在文件下拉窗口底部设置最近运行文件名数量? 打开“工具”,选择“选项”,然后选择“常规”,并在“最近使用文件列表”下文件编号输入框中更改文件编号。...上下拖动,鼠标会在格,单元边界处变成一个水平“工”字符号,左右拖动,鼠标会变成一个垂直“工”字符号。在释放鼠标按钮完成操作后,一个或多个选定格单位将被拖放到一个新位置。...请注意在新序列第2项之间输入带半角符号逗号来分隔它们(例如:张三,李四,王二.),然后单击“添加”按钮保存输入序列。...当我们在工作表中输入数据,我们有时会在向下滚动记住每个列标题相对位置,尤其是当标题行消失时。此时,您可以将窗口分成几个部分,然后将标题部分保留在屏幕上,只滚动数据部分。

    19.2K10

    iOS 9人机界面指南(四):UI元素(下)- 腾讯ISUX

    设计一个与应用风格协调活动指示器。可以的话,让活动指示器尺寸和颜色与它所在背景协调。 4.3.2 添加联系人按钮 添加联系人按钮让用户将现有联系人添加到文本框或者其它文字视图中。 ?...步进器: 是一个两段控件,其中一段默认显示减号,另一端默认显示加号 支持自定义图片 不展示用户更改值 当用户想要对数值进行小幅度调整,可以使用步进器。...文本框 高度固定,包含圆角 当用户点击它,自动唤起输入键盘 可以包含系统提供按钮书签按钮(Bookmarks) 可以展示多种文字样式(了解更多请参考 UITextView) 使用文本框来获取用户输入少量信息...举个例子,你可以在文本框左侧或者右侧加入自定义图形,或者加入系统按钮书签按钮等。一般来说,文本框左侧用于表述文本框含义,而右侧用于展示附加功能,书签。...设计文案可以遵循以下指南: 跟其它所有按钮一样,使用标题式大写,而且不需要标点符号 尽可能使用与警告文案直接相关动词或动词词组,”取消(Cancel)”,”查看全部(View All)”,”回复

    13.2K30

    如何深入理解 JavaScript 中懒加载

    对于可能不会向下滚动查看整个页面的访问者来说,这将变得有益,因为它可以帮助防止他们超出每月限额。 提高页面速度得分和增强SEO性能:搜索引擎将页面速度视为排名因素之一。...多个Intersection Observers可以同时观察同一页上不同元素。例如,假设您有一个页面上有多个图像,并且希望在用户向下滚动页面延迟加载这些图像。...当观察到一张图片并进入(即 entry.isIntersecting 为真),我们将其 src 属性设置为 data-src 值,该值保存了实际图片URL。这个操作触发了图片懒加载。...滚动事件上懒加载内容: 基于滚动事件方法可以实现高度定制懒加载实现。您可以完全控制内容何时以及如何加载,使其适用于需要在元素可见执行特定任务或转换场景。...与Intersection Observer API最适合图像和特定元素不同,基于滚动事件懒加载提供了更多灵活性。您可以将其应用于任何内容或复杂组件,这些内容可能不适合“在视图中概念。

    35030

    使用Matplotlib绘制图常见问题和答案

    Matplotlib是最受欢迎二维图形库,但有时让你图变得像你想象中好并不容易。 如何更改图例上标签名称?如何设置刻度线?如何将刻度更改为对数刻度?如何在图中添加注释和箭头?...如何在图中添加网格线? 本文收集了有关如何自定义Matplotlib图常见问题和答案。这可以作为快速进行Matplotlib绘图一个很好速查表,而不是Matplotlib库完整介绍。...如何在图中添加网格线? plt.grid(True) 风格和属性 问:如何更改线条颜色、宽度或样式? 你可以传入参数color,linewidth和linestyle。...plt.plot(x,y,color='green',linewidth= 2,linestyle=“- ”) 以下是你可以设置一些linestyle选项。 ? 问:如何更改标记样式或颜色?...图例 问:如何在图中添加图例? 如果图例未自动显示在图表上,则可以使用以下代码显示图例。 plt.legend() 问:如何更改图例出现位置?

    10.7K31

    CSS 中 关于 Overflow ,你需要了解这些知识点!

    当内容比其父内容长,它将被剪切。但是,可以使用 Javascript 滚动内容。 Scroll ? 在上图中,无论内容是否长,滚动条总是可见。注意,这取决于操作系统。...Auto auto这是一个聪明关键字,仅当内容比其容器长才显示滚动条。 ? 注意,在图中,只有当内容比其容器长滚动条才可见。...要解决该问题,我们可以主按钮添加overflow: hidden,并更改其对齐方式: .button { vertical-align: top; } 事例源码:https://codepen.io...grid 项目 CSS 网格有三种情况可以导致水平滚动,来看看它们。 对列使用像素值 ? 当使用像素值,这将在口宽度较小时引起问题。...一个简单解决方法是将grid-template-columns重置为1fr,并在口较大对其进行更改

    4.5K20

    【Flutter】自定义滚动开关

    假设此属性价值回报为true,则此开关为ON,为OFF则为false。当此属性无效,开关小部件会失效。 该演示视频展示了如何在颤动中创建自定义滚动开关。...它显示了自定义滚动开关如何在flutter应用程序中使用lite_rolling_switch包工作。...它显示了在用户按下按钮后进行切换交互,该开关将滚动到具有动画效果另一侧,并且在滚动该开关更改图标和文本。...**animationDuration:**此属性用于动画完成一个周期应花费时间。 **colorOn:**此属性用于在开关打开显示颜色。...我们将添加colorOn表示,当开关处于打开状态颜色将显示在按钮上;当colorOff意味着当开关处于关闭状态颜色将显示在按钮上。

    33.4K60

    2021 最新 IntelliJ IDEA 详细配置步骤演示(图文版)

    User contrast scrollbars: 使编辑器滚动条更加可见。...单击+按钮以在所选项目下添加动作或分隔符。 单击-按钮以删除所选项目。 单击编辑图标按钮以添加或更改所选操作图标。您只能将PNG或SVG文件用作图标。...单击上移按钮或下移按钮向上或向下移动所选项目。 单击恢复按钮以将所选操作或所有操作恢复为默认设置。 3. System Settings(系统设置) 1....Data Sharing(数据共享) 选中这个发送使用情况统计信息复选框后,将会允许JetBrains收集你使用IntelliJ IDEA最常使用功能和操作统计信息。 4....File Colors(文件颜色) 使用此页面可以设置不同背景颜色,以区分特定范围项目文件。 \1. Enable file color(启用文件颜色) 2.

    90810

    开始使用-编写你第一个Flutter应用程序 顶

    你会建立什么 您将实施一个简单移动应用程序,为一家创业公司生成建议名称。 用户可以选择和取消选择名称,保存最好名称。 该代码一次生成十个名称。 当用户滚动,会生成新批次名称。...每次单击热重新加载或保存项目,都会在正在运行应用程序中随机选择不同单词对。...这个类将保存随着用户滚动而无限增长生成单词对,以及最喜欢单词对,因为用户通过切换心脏图标来将它们从列表中添加或删除。 你会一点一点地建立这个类。...尽可能向下滚动,您将继续看到新单词配对。 ? 问题? 如果您应用程序运行不正常,则可以使用以下链接中代码重新进入正轨。...1.您可以通过配置ThemeData类轻松更改应用程序主题。 您应用程序目前使用默认主题,但您将更改主要颜色为白色。

    9.5K20

    钉钉如何设置代理服务器

    钉钉是一款非常流行企业通讯工具,许多企业都使用它来沟通和协作。然而,我们在某些特殊情况下,可能会需要使用代理服务器来访问钉钉。今天就给大家讲解一下如何在钉钉中设置代理服务器。...在您设备上找到钉钉应用程序图标,然后单击它以打开应用程序。步骤二:进入设置页面在钉钉应用程序中,单击屏幕左上角“工作台”按钮。然后,从下拉菜单中选择“设置”选项。...步骤三:选择“网络”选项在“设置”页面中,向下滚动并找到“网络”选项。单击“网络”选项,然后选择“代理设置”。步骤四:设置代理在“代理设置”页面中,您可以选择手动设置代理或使用自动代理。...如果您选择手动设置代理,请输入代理服务器IP地址和端口号。如果您选择自动代理,请输入自动代理URL。步骤五:保存设置完成代理设置后,请单击页面右上角保存按钮保存更改。...在本文中,我们向您介绍了如何在钉钉中设置代理服务器。其实还是挺简单,根据步骤一步一步去操作,就可以了。希望本文能对能有所帮助。

    1.1K30

    2022 年 CSS 全览

    在移动设备上,加载页面,会显示带有 url 状态栏,此栏会占用部分口空间。在几秒钟和一些交互之后,状态栏可能会滑开,以便为用户提供更大口体验。...CSS保存数据 在 prefers-reduced-data媒体查询之前,JavaScript 和服务器可以根据用户操作系统或浏览器“data saver”选项更改其行为,但 CSS 不能。...根据访问大小,可以在页面加载上节省更多资源。当用户与媒体滚动条交互,继续保存。这些图像上都有load="lazy"属性,再加上CSS完全隐藏元素,这意味着永远不会对图像发出网络请求。...对于我测试,在一个中等大小口上,最初加载了 40 个请求和 700kb 资源。当用户滚动媒体选择,会加载更多请求和资源。...考虑一下可滑动组件,其中向左或向右滑动会触发不同事件,或者页面加载搜索栏最初是隐藏,直到滚动到顶部。这个CSS属性允许开发者指定一个滚动条应该从一个特定点开始。

    4.2K20

    Google Earth Engine (GEE) ——Earth Engine Explorer (EE Explorer)使用最全解析(8000字长文)

    缩放: 按钮:使用 [+] 和 [-] 按钮放大和缩小。 指针:双击左键放大,双击缩小。 鼠标滚轮:通过滚动鼠标滚轮放大和缩小。您计算机鼠标设置将决定向前和向后滚动操作。...要更改地图背景,请使用地图右上角按钮选择地图视图或卫星视图。选择地图视图,地图按钮下方将出现一个复选框,用于打开/关闭地形而不是路线图视图。...尝试添加新图层并通过对图层重新排序并使用可见性图标交替可见性来更改图层可见性。 删除图层 单击数据列表中数据层名称以显示层设置对话框。 单击垃圾箱按钮,该图层将从您数据列表和地图中删除。...单击保存按钮更改应用到地图图层显示并关闭图层设置。您应该会看到植被颜色从绿色变为红色戏剧性变化。 对比度、亮度和不透明度 数据范围 可以使用范围(最小值和最大值)和伽玛参数调整图像对比度和亮度。...打开和关闭顶层可见性,您将看到这座城市在 26 年期间增长。 您所见,在上面的两张图片之间查看,2011 年图片比 1986 年图片具有更大城市面积。

    33510

    >>开发工具:IntelliJ IDEA 2020.3基础技能

    按此⌫按钮从列表中删除所选文件,然后在编辑器中将其关闭。 更改IDE外观 1、按⌃` 。 2、在“切换”菜单中,选择所需选项,然后按⏎。使用相同快捷方式⌃` 撤消更改。...滚动条 在编辑器中使用代码,IntelliJ IDEA在滚动条上显示代码分析结果,其中包括错误和警告。您可以检查您代码是否有问题,然后快速导航到它们。...如果您觉得自己代码完整,如果仍有任何错误,建议您在编译项目之前先进行探索和解决。 从红色标记错误到蓝色标记TODO注释,不同颜色条纹表示问题严重性,但是您可以根据需要更改显示颜色。...配置保存尾随空格行为 在“设置/首选项”对话框中⌘,转到“编辑器” | “首选项”。通用。在其他部分,您可以配置尾随空格选项。...例如,当您手动或自动保存代码并且想要保留插入记号行上尾随空格而无论在“保存删除尾随空格”列表中选择了什么选项,请选择“始终在插入记号行上保留尾随空格”选项。

    33720

    java怎么用_如何使用Java编写程序

    如果显示是基于X64PC,则您计算机是64位。对于显示图片,我正在运行32位,系统信息栏中显示那样。 步骤4:下载Java开发工具包 最后,我们将开始下载JDK。...向下滚动页面;确保接受用户许可协议。接下来,单击适合您计算机JDK下载正确版本(X-86或X-64。)为了突出参考,我在图中突出显示了Windows下载。...但是,仍需要更改某些设置,Windows计算机才能充分发挥作用。打开开始菜单,然后右键单击“计算机”或“我电脑”按钮。接下来,在弹出菜单中单击“属性”按钮。图像应该或多或少显示出现内容。...在中间菜单中,滚动到Path变量,将其突出显示,然后单击页面底部附近编辑按钮第一幅图所示。一长串计算机单词将弹出。滚动到开头,然后插入“bin;”。...步骤7:准备编码 这是一个简单步骤:打开“我文档”。创建一个名为“JavaCoding”新文件夹。保存。现在我们终于可以编码了! 步骤8:键入程序 打开开始菜单。

    3.2K20

    最新iOS设计规范五|3大界面要素:控件(Controls)

    添加联系人按钮 用户可以点击“添加联系人”按钮来浏览现有联系人列表,并选择一个要插入到文本字段或其他视图中联系人。...最好使用系统提供颜色选择器来帮助人们选择颜色。使用内置颜色选择器可以提供一致用户体验,此外还可以使人们保存可以从任何应用程序访问一组颜色。...七、选择器(Pickers) 选择器可以显示一个或多个可滚动不同值列表,供人们选择。在iOS 14及更高版本中,日期选择器支持其他选择值方式,例如在日历视图中选择日期或使用数字键盘输入日期和时间。...刷新控件是活动加载指示器一种特殊类型,默认情况下处于隐藏状态,并在向下拖动要重新加载视图可见。例如,在“邮件”中,您可以将“收件箱”邮件列表向下拖动以检查是否有新邮件。 ? 执行自动内容更新。...若有“清除”按钮,点击它便会立即清空文本字段内容,避免一直点击删除。 适当时候,使用安全文本字段。若需要输入是敏感数据(密码),请始终使用安全提示类文本字段。

    8.6K30

    CollapsingToolbarLayout使用

    ,直至高度缩为Toolbar高度并成为Toolbar背景色;向下滑动列表,Header部分逐渐显示。...attr/colorPrimaryDark",即style样式中定义沉浸式状态栏颜色。...,效果图中所示;contentScrim内容遮罩,上下滚动图片上面显示和隐藏遮罩色,Toolbar位置背景色;通常这样设置:app:contentScrim="?...attr/colorPrimary",即显示为Toolbar颜色,应用主题色;layout_collapseMode折叠模式,设置其他控件滚动自身交互行为,有两种取值:parallax,折叠视差效果...和layout_anchorGravity可以控制FloatingActionButtonbehavior和位置,如上图所示,当滚动列表是,FAB按钮会随着AppBarLayout而显示和隐藏,并自带缩放动画

    2.5K60
    领券