![](/img/trans.png)
[英]How can I detect the state of the bluetooth icon in the status bar of an iPhone?
[英]How do I detect a touch in the iPhone status bar?
我有一个UITableview,当触摸状态栏时,我想滚动到顶部。
我希望找到一个可以听的通知,然后将tableview:scrollToRowAtIndexPath:用于滚动,但找不到。
有没有办法做到这一点?
[更新]
在网上找到更多信息,我怀疑这是模拟器在咬我。 我的UIScrollView无法滚动到模拟器的顶部,但是我没有在硬件上尝试过。 另外,我有一个UIScrollView,还有UITextView,所以我想知道是否在吃它。
我将看到我可以使用scrollsToTop做什么。
您真正想要的是cocoawithlove.com上的这篇文章 。
从那篇文章:
“示例应用程序最棘手的部分是检测状态栏中的触摸。
通过在UITableView上实现自定义setContentOffset:animated:方法并在该方法中设置断点,您可以在调试器堆栈中看到为状态栏触摸而调用了UIApplication sendEvent:方法,因此我们将从这里开始。”
除非将scrollsToTop属性设置为NO,否则它应该是自动发生的。
这可能是主要的矫over过正,但是您可以编写自己的状态栏。
您可以通过在应用程序plist中将“状态栏最初处于隐藏状态”设置为YES来隐藏实际状态栏。 然后在视图顶部以20px的高度创建自己的自定义状态栏视图,该视图可以是UIButton或只是具有UITapGestureRecognizer的UIView。
您可以使用以下方法检测电池电量/状态(是否已充电和未插入):
UIDevice *myDevice = [UIDevice currentDevice];
[myDevice setBatteryMonitoringEnabled:YES];
float batteryLevel = [myDevice batteryLevel];
UIDeviceBatteryState batteryState = [myDevice batteryState];
您可以使用[NSDate date]获取时间; (然后使用NSDateFormatter进行格式化)。
获得信号强度有些困难,但可以通过一定程度的独创性粗略估算。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.