it-swarm.com.ru

Как удалить выбранный UIButton цвет фона?

Я ищу решение этой проблемы, которое не требует использования изображений/PNG. Я ищу способ удалить синий фоновый цвет UIButton, когда он находится в выбранном состоянии, и я просто не могу найти способ сделать это без использования изображений. Я в основном пытаюсь сделать что-то подобное в случае UITableViewCell:

   cell.selectionStyle = UITableViewCellSelectionStyleNone;
29
TommyG

К сожалению, на данный момент я не на тестовой машине, но есть две вещи, которые вы можете попробовать.

Сначала будет установить следующее свойство:

button.adjustsImageWhenHighlighted = NO;

Или снимите флажок «Подсветка настраивает изображение» в Интерфейсном Разработчике.

Если это не работает так, как вы ожидаете, вы можете отменить выбор кнопки в действии, к которому вы привязали ее, например, так:

- (IBAction)yourButtonAction:(id)sender {
    [sender setHighlighted:NO];
}
16
sudo rm -rf

У меня была такая же проблема, и я решил ее, изменив тип UIButton с «System» на «Custom». Синий цвет фона не отображается в выбранном состоянии, когда он имеет тип «Пользовательский».

106
Rufus

Измените альфа tintColor на ноль, работает, если iOS 5.0 или более поздняя

UIColor *color = [[UIColor alloc] initWithRed:0.0 green:0.0 blue:0.0 alpha:0.0];  
button.tintColor = color;
9
Ali Seymen

Очень просто в «Инспекторе атрибутов» прокрутки вниз прокрутите вниз до раздела «Вид» и чуть ниже «Фона» найдите «Оттенок» и установите для него «Очистить цвет» или любой конкретный цвет, если вы хотите, чтобы этот цвет . Снимок настроек

3
Akash Bhardwaj

UIButton также с типом custom, мы можем установить его в xcode as- 

 enter image description here

ИЛИ По программному

 let customButton = UIButton(type: .custom) 
  customButton.setTitle("this is Button", for: .normal)
  customButton.setTitleColor(UIColor.blue, for: .normal)
  customButton.frame = CGRect(x: 15, y: 50, width: 300, height: 500)
            self.view.addSubview( customButton)

Теперь больше нет синий цвет фона UIButton

3
Jack

Для меня это было изменением button.tintColor в выделенном состоянии. Это Swift 3, iOS 10

override public var isHighlighted: Bool {
    didSet {
        self.tintColor = UIColor(red: 255/255, green: 255/255, blue: 255/255, alpha: 1.0)
    }
}

Или вы можете сделать то же самое в конструкторе интерфейса 

Выберите состояние кнопки

Выберите цвет оттенка кнопки

1
Sasa Blagojevic

Swift Version

extension UIButton {
    override public var highlighted: Bool {
        didSet {
            // clear background color when selected
            self.layer.backgroundColor = .None
        }
    }
}
0
jk2K