【问题标题】:maintaining slider position in xcode when switching views切换视图时保持 xcode 中的滑块位置
【发布时间】:2014-06-11 19:11:03
【问题描述】:

我对目标 c(三周)非常陌生,而且我 70 多岁,所以不像以前那么快了!无论如何,除了在从视图切换回来时保持滑块位置和值的问题之外,我对 IOS 应用程序做得很好。澄清一下:我有 3 个视图,每个视图都有 4 个滑块,我希望能够返回到滑块位置和值与离开时相同的任何视图。我确定有办法做到这一点,但我已经搜索了所有无济于事,所以我希望这里有人可以提供帮助!

【问题讨论】:

  • 欢迎来到 Stack Overflow!请参阅“如何提问”页面 (stackoverflow.com/help/how-to-ask),了解如何提出一个好问题来帮助志愿者帮助您。至少,您的 ViewController 实现和标头的代码示例会很有用,因为您必须在其中的某处维护状态。
  • 啊,对不起,帕尔帕提姆。我没有包括它,因为除了滑块代码本身之外我什么都没有。我不知道如何找到我需要使用的东西,所以我的头文件中只有这个:@property (weak, nonatomic) IBOutlet UISlider *practicalSlider; (所有滑块都相似),这在我的实现文件中: - (IBAction)practical:(id)sender { int practVariable=(int) (_practicalSlider.value); pVariable=实践变量; [自我传输]; }
  • 为了其他可能遇到相同问题的目标 C 编程新手的利益,我想我会在这里发布代码:[[NSUserDefaults standardUserDefaults] setFloat:[_imageSlider value] forKey:@" isliderValue"];进入滑块方法,并且: [_imageSlider setValue:[[NSUserDefaults standardUserDefaults] floatForKey:@"isliderValue"]];进入“viewWillAppear”

标签: ios xcode slider


【解决方案1】:

每次将 viewController 推送到导航堆栈时,是否都会分配一个实例?如果是这样,请创建一个属性并仅分配一次并使用相同的对象将其推入您的导航堆栈。它应该保留位置。

另一种可能的解决方案是将滑块的当前值保留在 viewController 中,并将滑块值设置为 viewWillAppear 中的持久值,每次视图出现在屏幕上时都会调用该值

【讨论】:

  • 谢谢 NavinDev - 我会弄清楚这意味着什么(不是讽刺 - 现在只是昏暗!)并尝试使用任一解决方案。
【解决方案2】:

您可以使用类似 NSUserDefaults 的方式保存滑块值。查找更多信息。

【讨论】:

  • 谢谢 Nas5296 - 我会调查的。
  • 随时可以!我希望你能弄清楚!
  • 谢谢 Nas5296 - 一切都已排序并完美运行。谢谢你的建议!
猜你喜欢
  • 2020-07-14
  • 1970-01-01
  • 1970-01-01
  • 2021-04-17
  • 2014-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多