我看过很多关于类似事情的帖子,但没有一个匹配或解决这个问题.从iOS 7开始,每当我添加UIButton到一个UITableViewCell或甚至是一个footerview它都工作"很好",这意味着它接收目标动作,但它没有显示通常在点击时发生的小亮点UIButton.它使UI看起来很时髦而不显示按钮对触摸的反应.
我很确定这是iOS7中的一个错误,但是有人找到了解决方案或者可以帮我找到一个:)
编辑:我忘了提到它会突出显示我是否长按按钮,但如果只是添加到标准视图就不会像它那样快速点击.
码:
创建按钮:
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button.titleLabel.font = [UIFont systemFontOfSize:14];
button.titleLabel.textColor = [UIColor blueColor];
[button setTitle:@"Testing" forState:UIControlStateNormal];
[button addTarget:self action:@selector(buttonPressed:) forControlEvents: UIControlEventTouchDown];
button.frame = CGRectMake(0, 0, self.view.frame.size.width/2, 40);
Run Code Online (Sandbox Code Playgroud)
我测试的东西:
//删除手势识别器UITableView,以防他们挡路.
for (UIGestureRecognizer *recognizer in self.tableView.gestureRecognizers) {
recognizer.enabled = NO;
}
Run Code Online (Sandbox Code Playgroud)
//从Cell中删除手势
for (UIGestureRecognizer *recognizer in self.contentView.gestureRecognizers) {
recognizer.enabled = NO;
}
Run Code Online (Sandbox Code Playgroud)
//这显示了轻微的触摸,但这不是理想的外观
button.showsTouchWhenHighlighted = YES;
Run Code Online (Sandbox Code Playgroud) 我有UIView一堆子视图,全部定位使用layoutSubviews.当view调整大小,相对位置都在改变.我想这些重新计算(使用+动画调整大小时发生[UIView beginAnimations:]调用).这似乎没有发生.有任何想法吗?
我正在尝试使用XCode 7在我的iOS 9 iPad上运行应用程序,它会卡在" Validating application"上.我附上截图:

我该怎么做才能解决这个问题?
我已经升级到Swift 2.0,当我尝试录制声音时我完全听不懂:
如果没有更多的上下文,表达的类型是不明确的
上 var recordSettings
我该怎么做才能解决这个错误,更重要的是,为什么?
var recordSettings = [
AVFormatIDKey: kAudioFormatAppleLossless,
AVEncoderAudioQualityKey : AVAudioQuality.Max.rawValue,
AVEncoderBitRateKey : 320000,
AVNumberOfChannelsKey: 2,
AVSampleRateKey : 44100.0
]
var dirPaths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
var docsDir: AnyObject = dirPaths[0]
var soundFilePath = docsDir.stringByAppendingPathComponent("tempRecordzz")
var soundFileURL:NSURL = NSURL(fileURLWithPath: soundFilePath)
var error: NSError?
do {
recorder = try AVAudioRecorder(URL: soundFileURL, settings: recordSettings)
} catch var error1 as NSError {
error = error1
recorder = nil
}
Run Code Online (Sandbox Code Playgroud) UITextField当用户输入文本时,我有一个收缩和扩展.如果文本字段的宽度达到屏幕宽度,我希望它是右对齐的,这样用户就可以看到最后输入的字符.在其他情况下,我希望它是左对齐的.
因为文本字段的最大宽度与屏幕不完全相同,所以我需要找到一种方法来检查它是否有可见区域以外的字符.
反正有没有实现这个目标?
我用来[NSDate date] 获取当前时间。如果用户不更改时间,一切都会正常...我的意思是,如果用户手动更改而不是自动设置时间。那我怎样才能得到原来的时间呢?
谢谢你!
如果打开iPhone上的应用程序,我如何从watchOS 2查看?
我想NSUserDefaults通过手表向iPhone 发送消息sendMessage(当收到消息时能够更新手机上的界面)当两个应用程序都在运行时我想发送NSUserDefaults即使只有watchOS 2应用程序正在运行.
根据我的阅读,我发现了这个:
/** The counterpart app must be reachable for a send message to succeed. */
@property (nonatomic, readonly, getter=isReachable) BOOL reachable;
Run Code Online (Sandbox Code Playgroud)
它总是可以从我检查的内容到达.
问题是我第一次从中获取数据WebServices所以我已经显示了这些数据TableView然后用户滚动下来tableview然后再次调用WebSevices并在数组中再次添加此数据但是当我尝试在nsmutable类型数组中再次添加数据应用程序崩溃
这是我的代码.有解决方案吗
第一次数据加载正在工作
var ary_mutable: NSMutableArray!
ary_mutable = NSMutableArray()
ary_mutable=jsonResult as AnyObject as! NSMutableArray
self.tbl_T.reloadData();
self.tbl_T.delegate=self;
self.tbl_T.dataSource=self;
Run Code Online (Sandbox Code Playgroud)
第二次数据加载并添加旧数组不工作
var myArray :NSArray!
myArray = jsonResult as AnyObject as! NSArray
ary_mutable.addObject(myArray.objectAtIndex(0))
Run Code Online (Sandbox Code Playgroud)
得到此错误
[__NSCFArray insertObject:atIndex:]: mutating method sent to immutable object'
Run Code Online (Sandbox Code Playgroud)
我也试过这段代码但不行
ary_mutable.addObject(myArray)
Run Code Online (Sandbox Code Playgroud) 我在Swift中使用iOS应用程序,每次编写代码或从列表中选择变量/方法的名称,XCode编译项目.从处理器使用情况图可以看出,这不是一个只有视觉的问题.
这减缓了我的mac,变量/方法建议似乎也很慢......
我已经更新到XCode 7.1.1但仍然这样做.有什么建议?
我使用 NSOutlineView 自动保存展开状态。如果我在数据源更新时手动重新加载数据,则func outlineView(_ outlineView: NSOutlineView, itemForPersistentObject object: Any) -> Any?不再调用数据源方法,并且每个单元格都会崩溃。知道为什么会发生这种情况吗?
尝试使用 nil send 作为参数重新加载项目,但仍然没有效果。
我用它来持久保存扩展行:
func outlineView(_ outlineView: NSOutlineView, persistentObjectForItem item: Any?) -> Any? {
return NSKeyedArchiver.archivedData(withRootObject: item)
}
func outlineView(_ outlineView: NSOutlineView, itemForPersistentObject object: Any) -> Any? {
guard let data = object as? Data,
let item = NSKeyedUnarchiver.unarchiveObject(with: data) as? Category else { return nil }
let foundItem = recursiveSearch(for: item, in: viewModel.dataSource.value)
return foundItem
}
Run Code Online (Sandbox Code Playgroud)
这是重新加载数据:
viewModel.dataSource.subscribe(onNext: { [weak self] _ in
self?.outlineView.reloadData()
}).disposed(by: …Run Code Online (Sandbox Code Playgroud)