来自不同类的特定实例的 Swift 引用变量

2024-03-01

总的来说,我对 Swift 和 iOS 都很陌生。我正在使用 Swift 编写一个应用程序。这个应用程序有两个文件,ViewController.swift and BTService.swift.

ViewController.swift有课ViewController类型的UIViewController, and BTService.swift有课BTService类型NSObject and CBPeripheralDelegate。我在其中设置了一个滑块UIViewController类,并将其值分配给变量currentValue.

现在,我希望能够参考currentValue从内部BTService班级。我该怎么做呢?我注意到如果我定义一个变量,test,在文件中ViewController before班上UIViewController, 我can参考test in BTService。但这对我来说没有用,因为我无法(据我所知)将滑块值分配给测试,除非测试是在UIViewController class.

这是我的 ViewController 和 currentValue 变量定义。

class ViewController: UIViewController {


@IBOutlet var positionLabel: UILabel!
@IBOutlet var positionSlider: UISlider!
@IBOutlet var connectionLabel: UILabel!

@IBAction func sliderValChanged(sender: UISlider) {

    var currentValue = Float(positionSlider.value)

任何帮助将不胜感激!谢谢。


您可以使用NSUserDefaults https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSUserDefaults_Class/index.html在应用程序中存储数据并在视图控制器之间共享数据。

在您给出的示例中,您可以像这样存储它:

let defaults: NSUserDefaults = NSUserDefaults.standardUserDefaults()
defaults.setFloat(Float(positionSlider.value), forKey: "sliderValue") // Write to NSUserDefaults
defaults.synchronize()

然后,每当您需要在另一个文件(或这个文件)中访问它时,您只需调用floatForKey:

if let currentValue: Float = defaults.floatForKey("sliderValue") {
    // Access slider value
} else {
    // Probably not saved
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

来自不同类的特定实例的 Swift 引用变量 的相关文章

  • 如何制作带有 SWIFT 图像的弹出窗口

    我想知道如何制作类似于此示例的弹出窗口 原始窗口充满了按钮 选择这些按钮后将拉出我想要使用的图像 我会简单地创建一个可重用的UIView组件以及作为子视图所需的一切 例如UIImageView为了你的形象 UILabel or a UIBu
  • 如何保护 iOS 应用程序免受任何操作系统攻击(在越狱设备上)

    我希望保护我的应用程序数据 以防任何操作系统攻击或越狱 iOS 设备上的未经授权的访问 在这种情况下 有什么方法可以检测此类威胁并保护应用程序数据 虽然我同意 jrturton 的说法 但如果您有想要保护的关键数据免受流氓应用程序 而不是用
  • 错误域=kAFAssistantErrorDomain 代码=209“(空)”

    我面临着一个问题SFSpeechRecognizer 启动应用程序几秒钟后 我开始收到错误消息 错误域 kAFAssistantErrorDomain 代码 209 空 和 错误 域 kAFAssistantErrorDomain 代码 2
  • Objective-C UILabel 作为超链接

    我正在尝试做一个UILabel一个链接UIWebView 我怎样才能做一个UILabel作为超链接 您可以使用 UITapGestureRecognizer 它将实现与您想要的类似的功能 UILabel myLabel UILabel al
  • 无法在 Swift 中对闭包进行弱引用

    Update 我试着不弱化地写一下 好像也没有漏的情况 所以也许这个问题已经没有必要了 在 Objective C ARC 中 当你想让一个闭包能够在闭包内部使用它自己时 该块不能捕获对自身的强引用 否则它将是一个保留循环 因此您可以使闭包
  • iOS 中 NSDecimalNumber 的小数分隔符错误

    我尝试通过以下方式输出具有正确的小数分隔符的十进制数的描述 NSString strValue 9 94300 NSDecimalNumber decimalNumber NSDecimalNumber decimalNumberWithS
  • CALayer边框奇怪问题

    我正在向 CALayer 添加边框 但有一些奇怪的行为 在我应用的边框之后出现模糊边框 参见屏幕截图 这是我的代码 void configureLabel self hidden YES self textAlignment NSTextA
  • ios swift parse:从 3 个类收集数据

    我有这样的结构 User CardSet 带有指向 User objectId 的指针 user 和 col name 带有点 cards 的卡片到 Card Set objectId 和列 name 我想选择所有卡数据 包括当前用户的卡集
  • 从按钮执行 Segue 时应用程序冻结

    我的故事板中有一个按钮 它呈现一个带有模式序列的视图控制器 每次按下此按钮时 应用程序都会冻结 没有崩溃 也没有错误消息 prepareForSegue被调用 所有应该存在的视图控制器都在代码中prepareForSegue 但它们不会出现
  • 为什么 iOS 启动屏幕很慢?

    我的 iOS 应用程序启动屏幕大约需要 3 5 秒 我有一张将在启动屏幕后加载的地图 我的用户必须等待启动屏幕加载 然后再等待 3 秒才能加载地图 有没有办法最大限度地减少启动屏幕时间 基本上这种延迟意味着you在启动过程中做了一些非常错误
  • iPhone - UIImage imageWithData 返回 nil

    我需要从字节数组创建 UIImage 现在我创建了字节数组 image CGImageCreateWithImageInRect aux CGImage imageRect context CGBitmapContextCreate dat
  • 如何使用 iPhone 将照片上传到服务器?

    我正在编写一个 iPhone 应用程序 它可以拍摄照片然后将其上传到服务器 如何使用 Cocoa 将照片上传到服务器 我想我在某处使用 NSUrl Thanks Header interface EPUploader NSObject NS
  • 使用未解析的标识符“FlurryAdInterstitial”

    我正在尝试整合Flurry Interstitial Ads使用cocoapods in Swift and Xcode 7 1 1 我正在关注开发人员雅虎网站上的此文档 https developer yahoo com flurry d
  • 贴纸包会在模拟器上使 iMessage 崩溃,但在 iPhone 上不会崩溃

    按照 Apple 的在线说明和视频在 Xcode 中创建了一个贴纸包 所有图像的尺寸均正确且远低于文件大小阈值 如果我在我的实体 iPhone 上构建并运行贴纸包 一切都会完美运行 如果我在模拟器上构建并运行贴纸包 对于任何模拟的 iPho
  • UItextView 背景颜色 Linespacing 区域太

    我正在尝试在 UITextView 中复制文本突出显示 不是搜索文本突出显示 但我也被行间距的颜色所困扰 我该如何纠正这个问题 现在的情况 期望的结果 我已将以下属性添加到我的 UiTextview 的属性文本中 对于段落行间距 我使用了以
  • 在 UIWebView 中播放 Facebook 视频

    有谁知道如何在 Facebook 上播放视频UIWebView 我的应用程序将视频上 传到 Facebook 并检索视频的网址 我想将此网址嵌入到UIWebView播放 我已经为 youtube 解决了这个问题 但没有为 Facebook
  • 如何在 UIScrollView 中启用缩放

    如何启用缩放功能UIScrollView 答案是here https developer apple com documentation uikit uiscrollview 滚动视图还可以处理内容的缩放和平移 当用户做出捏合或张开手势时
  • 如果我使用自定义 UITableViewCell,是否需要设置 heightForRowAtIndexPath?

    如果我使用自定义 UITableViewCell 是否需要设置 heightForRowAtIndexPath 在我的 NIB 中 我已经设置了单元高度 当我覆盖 heightForRowAtIndexPath 时 单元格的内容不会出现 即
  • UIView 圆角 - Swift 2.0?

    我会尝试将一些项目更新到 Swift 2 0 我有一个视图 左上角有一个圆角 在 Swift 没有警告 没有错误 只是没有圆角 这就是它在 Swift let maskPath UIBezierPath roundedRect conten
  • iOS:如何知道 reloadData() 已完成其任务?

    我想滚动到给定索引 self boldRowPath 但是当我调试时scrollToRow之前执行reloadData 如何知道reloadData已完成 func getAllTimeEvent self arrAllTimeEvent

随机推荐

  • Django 相当于每个用户的最新条目

    我很惊讶这个问题没有被提出 在网上找不到太多 Using Entry objects latest created at 我可以恢复所有 Entry 对象的最新条目 但是如果我想要每个用户的最新条目 这类似于 SQL 最新记录查询 但是我如
  • 执行内联powershell脚本

    我正在尝试从任务计划程序调用内联 powershell 脚本 以便在触发特定事件时发送电子邮件 我无法在任务计划程序操作窗口中使用本机 发送电子邮件 操作 因为 SMTP 服务器需要 SSL 并且无法在操作窗口中指定此操作 因此 我希望 启
  • 同步集合线程安全

    我有 System Collections Generic SynchronizedCollection 共享集合 我们的代码使用 Net 4 0任务库来跨越线程并将同步集合传递给线程 到目前为止 线程尚未向集合中添加或删除项目 但是新的要
  • Java 中什么时候方法调用可以更改参数,什么时候不可以更改参数? [复制]

    这个问题在这里已经有答案了 这是在java中 我尝试在这里寻找 谷歌搜索这个问题的答案 但找不到足够的答案 所以如果这是重复的 我深表歉意 我对更改您输入的参数的方法背后的规则感到困惑 例如 考虑以下示例 public static voi
  • logback每小时回滚时删除MaxHistory之前的日志

    我使用下面的附加程序 我可以看到回滚每小时发生一次 但我提到了
  • 如何测试包含 gets.chomp 的函数?

    我有一个使用 gets chomp 的简单函数 如下所示 def welcome user puts Welcome What would you like to do action gets chomp end 我想用它来测试它ruby是
  • RAND_MAX 宏:有符号还是无符号?

    我查阅了 C 标准 从 1999 年开始 它只说RAND MAX应该至少为 32767 但没有说明该宏是否应扩展为有符号整数或无符号整数 单一 UNIX 规范 link 1 http pubs opengroup org onlinepub
  • fileprivate 和 private 扩展名之间的区别?

    斯威夫特3 0 我知道fileprivate访问级别修饰符限制对声明它的源文件的函数 属性的使用 并且private 仅限于声明的词法范围 但似乎这条规则不适用于延期 例如 此代码有效 class Foo fileprivate exten
  • 如何从 GoDaddy 导入证书进行 Java 代码签名? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我需要能够使用 CA 的证书对 jar 文件进行签名 我按照 GoDaddy 文档中有关如何执行此操作
  • oop 中具有状态和行为的对象

    我不断听到术语 对象具有行为和状态 或只是其中之一 但有什么区别或者它意味着什么 如果有人能举一个例子 我将非常感激 灯是一个物体 lamp 中的 状态 开和关 lamp 中的 行为 打开和关闭 在编程中 您在 字段 中声明状态 在 方法
  • 加载 gif 图像在 IE 和 Chrome 中不显示

    我正在使用 JQuery ajax 调用向服务器发送同步调用 并希望显示当时的加载图像 但是加载图像在 Firefox 中可见 但在 IE 和 chrome 中不可见 当我调试时 我发现在 IE 中 当我们调用 java 脚本时 它会停止在
  • MATLAB sgolay(k, f) 的 Python 等效项是什么?

    我在 MATLAB 中有一个函数 b g sgolay k f 它输出一个 f x f 矩阵 当我在 Python 中对相同的 k 和 f 值运行相同的操作时 使用 scipy signal savgol coeffs f k 它输出一个完
  • 在 Bitbucket 中创建拉取请求:错误“不相关的分支”

    我有一个小团队在单个存储库上工作 我要求每个队友创建自己的分支并在该分支上工作 他们所有人都克隆了存储库 然后执行了以下命令 git checkout b BitPankaj BitPankaj是插图分支名称 他们开始在这个分支上工作并通过
  • 我可以使用 LLVM(低级虚拟机)为哪些平台编译二进制文件?

    我对使用 LLVM 的 Clang 编译器感兴趣 LLVM 声称是跨平台的 但尚不清楚可以针对哪些平台 我对此做了很多谷歌搜索 但似乎没有太多关于 LLVM 支持的平台的信息 我唯一发现的是 this http llvm org docs
  • 使用用户的 UID 发送 Firebase 云消息

    我想构建一个 Android 应用程序 允许用户向其他用户发送通知和数据消息 我最近才开始使用 Firebase Firebase 云消息传递对我来说仍然很困惑 我已经实现了向特定的发送消息device使用 Firebase 实例 ID 但
  • 未定义的引用 Json::Value 和 Json::Reader [重复]

    这个问题在这里已经有答案了 当我运行以下代码时 include
  • 从 CSV 文件读取/写入嵌套字典列表 (Python)

    我有一个如下所示的数据结构 data key 1 calc1 42 calc2 3 142 key 2 calc1 123 4 calc2 1 414 key 3 calc1 2 718 calc2 0 577 我希望能够将数据保存 加载到
  • Jenkins 建立健康阈值

    有没有办法改变 Jenkins 根据失败的测试计算构建运行状况的方式 我希望詹金斯治疗any失败的测试不是 阳光明媚 的 但到目前为止 我寻找一种方法来做到这一点还没有结果 标准设置是否允许这种级别的控制 或者是否有插件可以做到这一点 如果
  • 如何在 Android 上将 Google Drive 与 Picasso 集成?

    我正在编写一个在 Google Drive 中存储图像的应用程序 我想显示这些图像的图库 GridView 为了提高性能 即异步 我想将其与Picasso 但是Picasso load String 只是一个别名load Uri parse
  • 来自不同类的特定实例的 Swift 引用变量

    总的来说 我对 Swift 和 iOS 都很陌生 我正在使用 Swift 编写一个应用程序 这个应用程序有两个文件 ViewController swift and BTService swift ViewController swift有