相关疑难解决方法(0)

UIButton在iOS7中没有显示突出显示

我看过很多关于类似事情的帖子,但没有一个匹配或解决这个问题.从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)

iphone objective-c uitableview ios ios7

68
推荐指数
8
解决办法
2万
查看次数

initwithstyle:reuseIdentifier:未调用

我正在创建自己的自定义UITableViewCell用作原型单元的后端.在我的类中,我重写了initwithstyle:reuseIdentifier:方法来进行一些自定义初始化,但我的初始化程序没有被调用.我在其内部的第一行有一个断点,以及一个断点dequeueResusableCellWithIdentifier:.dequeueResusableCellWithIdentifier:调用该方法,它返回一个已启动的单元格,但未达到断点initwithstyle:reuseIdentifier:.任何帮助都会很棒.

uitableview ios

46
推荐指数
2
解决办法
1万
查看次数

UIButton默认点击UITableViewController自定义单元格中缺少的淡入淡出动画

我有一个自定义单元格,里面有几个UIButton.我在按钮上创建了类似的目标操作:

[cell.customLocationButton addTarget:self action:@selector(customLocationButtonTap:) forControlEvents:UIControlEventTouchUpInside];
Run Code Online (Sandbox Code Playgroud)

尽管我没有在UIButtons上看到默认的iOS淡入淡出动画,但这些动作效果很好?是否有我需要启用的东西 - 我认为它们是使用IB的UIButton时的标准?

iphone objective-c uibutton uitableview ios

9
推荐指数
3
解决办法
5576
查看次数

"延迟触及"属性似乎在IOS <11上被忽略

我在以这种方式创建的测试项目中有UITableView:

class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {

    @IBOutlet weak var tableView: UITableView!

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        tableView.delegate = self
        tableView.dataSource = self

    }

    // height?
    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
        //return cellHeightWithoutSeparator + cellSeparatorHeight
        //print("YES!")
        return 80 // arbitrary
    }

    // table wants a UITableViewCell for each row
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = …
Run Code Online (Sandbox Code Playgroud)

xcode cocoa-touch uitableview uiscrollview swift

8
推荐指数
0
解决办法
158
查看次数

UI按钮只在longPress上看起来被点击(突出显示)?

这似乎是一个奇怪的问题.我有一个迭代一个UIButton tableViewCelltableView这就是被放置在一个常规ViewController.出于某种原因,它只是长按时看起来被点击(从其默认蓝色突出显示为浅蓝色,然后再返回蓝色).它会在常规点击时执行我为其指定的任何操作(仅使用普通的旧打印语句启动),但只是看起来没有点击.有谁知道如何解决这个问题?按钮处于正常状态: 按钮处于正常状态

点击后按钮:

点击后按钮

长按后按钮(抱歉,不得不用手机拍照)

在此输入图像描述

编辑:这与iOS7问题中的答案不同,因为我正在寻找iOS 10快速解决方案,而非Objective-c.也不是iOS7

xcode uibutton

5
推荐指数
1
解决办法
1226
查看次数

屏幕底部 UIButton 的 TouchDown 延迟

UIButton在聊天屏幕的底部有一个。我TouchDown用来检测用户开始按住按钮并开始录音(标准信使应用程序功能)。

问题是当按钮位于屏幕底部时,从我开始按住按钮的那一刻到TouchDown触发的那一刻有 1 秒的延迟。

当显示键盘并且底部向上移动屏幕时,完全没有延迟。

我发现了一个类似的问题,iOS - UITableViewCell 中 UIButton 的延迟“触摸”事件,但该按钮不在表格视图或滚动视图中

覆盖touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?)按钮的方法并仅打印事件表明它也具有相同的滞后。

这让我觉得滞后与屏幕底部的按钮位置有关。

uibutton uikit ios swift

5
推荐指数
1
解决办法
967
查看次数

UITableView 内的突出显示按钮反应缓慢

我有一个带有动态填充行的 UITableView,但顶部还有一个部分,其中包含一个始终相同的特殊单元格(具有不同的标识符)。

我在这个单元格中添加了两个按钮,它们确实可以工作,但反应很差。也就是说,大约0.25秒后才会出现突出显示。

我正在使用以下稍微定制的按钮:

import UIKit

class HighlightingButton: UIButton {

    override var isHighlighted: Bool {
        didSet {
            if isHighlighted {
                backgroundColor = UIColor.lightGray
            } else {
                backgroundColor = UIColor.white
            }
        }
    }

}
Run Code Online (Sandbox Code Playgroud)

用户获得点击按钮的清晰反馈非常重要。然而,由于缓慢的突出显示,这并不令人满意,尽管事件似乎被快速触发(通过打印一些输出来判断)。

在普通视图中,此突出显示按钮按预期工作,并且突出显示会随着我的点击而快速闪烁。

UITableViewCell 的事件处理中是否存在导致这种缓慢的原因?

更新

我创建了一个简约的示例项目来演示该问题。没有任何手势识别器,但仍然存在非常明显的延迟。

uitableview ios swift

4
推荐指数
1
解决办法
794
查看次数