Andrew
Поэтому первоначально без деталей.
Andrew
func setupCell(withName name: String, actionNames: [String], color: UIColor, for tableVC: TableViewController) {
tableViewController = tableVC
let tapped = UITapGestureRecognizer(target: self, action: #selector(handleTap))
contentView.addGestureRecognizer(tapped)
label = {
let lbl = UILabel()
lbl.layoutMargins = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
lbl.numberOfLines = 2
// make string with name and actionNames
let attributedText = NSMutableAttributedString(string: name, attributes: [NSFontAttributeName: UIFont.boldSystemFont(ofSize: 14)])
attributedText.append(NSAttributedString(string: "\n" + actionNames[0] + " • " + actionNames[1] + " • " + actionNames[2] + " • " + actionNames[3],
attributes: [NSFontAttributeName: UIFont.boldSystemFont(ofSize: 12),
NSForegroundColorAttributeName: colorLightGray]))
// add line spacing
let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.lineSpacing = 4
attributedText.addAttribute(NSParagraphStyleAttributeName, value: paragraphStyle, range: NSMakeRange(0, attributedText.string.characters.count))
lbl.attributedText = attributedText
return lbl
}()
picture = {
let img = UIImageView()
img.contentMode = .scaleAspectFill
img.image = #imageLiteral(resourceName: "cat-icon")
img.layer.cornerRadius = 10
img.clipsToBounds = true
img.backgroundColor = color
return img
}()
addSubview(label)
addSubview(picture)
addConstraintsWithFormat(format: "H:|-8-[v0(44)]-8-[v1]-8-|", views: picture, label)
addConstraintsWithFormat(format: "V:|-8-[v0(44)]-8-|", views: picture)
addConstraintsWithFormat(format: "V:|-8-[v0]", views: label)
hasBeenSetUp = true
}
Anonymous
так что, не станешь показывать cell.setupCell(withName: name, actionNames: actionNames, color: color, for: self)
Evgeniy
или говно инструкция
смотри в сторону
https://developer.apple.com/library/content/documentation/WindowsViews/Conceptual/CollectionViewPGforIOS/UsingtheFlowLayout/UsingtheFlowLayout.html
Тихонов
Тихонов
по факту есть решение, просто тень добавить
Тихонов
но я думаю, может что получше есть
Andrew
func setupCell(withName name: String, actionNames: [String], color: UIColor, for tableVC: TableViewController) {
tableViewController = tableVC
let tapped = UITapGestureRecognizer(target: self, action: #selector(handleTap))
contentView.addGestureRecognizer(tapped)
label = {
let lbl = UILabel()
lbl.layoutMargins = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
lbl.numberOfLines = 2
// make string with name and actionNames
let attributedText = NSMutableAttributedString(string: name, attributes: [NSFontAttributeName: UIFont.boldSystemFont(ofSize: 14)])
attributedText.append(NSAttributedString(string: "\n" + actionNames[0] + " • " + actionNames[1] + " • " + actionNames[2] + " • " + actionNames[3],
attributes: [NSFontAttributeName: UIFont.boldSystemFont(ofSize: 12),
NSForegroundColorAttributeName: colorLightGray]))
// add line spacing
let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.lineSpacing = 4
attributedText.addAttribute(NSParagraphStyleAttributeName, value: paragraphStyle, range: NSMakeRange(0, attributedText.string.characters.count))
lbl.attributedText = attributedText
return lbl
}()
picture = {
let img = UIImageView()
img.contentMode = .scaleAspectFill
img.image = #imageLiteral(resourceName: "cat-icon")
img.layer.cornerRadius = 10
img.clipsToBounds = true
img.backgroundColor = color
return img
}()
addSubview(label)
addSubview(picture)
addConstraintsWithFormat(format: "H:|-8-[v0(44)]-8-[v1]-8-|", views: picture, label)
addConstraintsWithFormat(format: "V:|-8-[v0(44)]-8-|", views: picture)
addConstraintsWithFormat(format: "V:|-8-[v0]", views: label)
hasBeenSetUp = true
}
Когда я писал это, я думал, что функция выполнится ровно 25 раз (на каждый элемент массива) и заглохнет.
Anonymous
func setupCell(withName name: String, actionNames: [String], color: UIColor, for tableVC: TableViewController) {
tableViewController = tableVC
let tapped = UITapGestureRecognizer(target: self, action: #selector(handleTap))
contentView.addGestureRecognizer(tapped)
label = {
let lbl = UILabel()
lbl.layoutMargins = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
lbl.numberOfLines = 2
// make string with name and actionNames
let attributedText = NSMutableAttributedString(string: name, attributes: [NSFontAttributeName: UIFont.boldSystemFont(ofSize: 14)])
attributedText.append(NSAttributedString(string: "\n" + actionNames[0] + " • " + actionNames[1] + " • " + actionNames[2] + " • " + actionNames[3],
attributes: [NSFontAttributeName: UIFont.boldSystemFont(ofSize: 12),
NSForegroundColorAttributeName: colorLightGray]))
// add line spacing
let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.lineSpacing = 4
attributedText.addAttribute(NSParagraphStyleAttributeName, value: paragraphStyle, range: NSMakeRange(0, attributedText.string.characters.count))
lbl.attributedText = attributedText
return lbl
}()
picture = {
let img = UIImageView()
img.contentMode = .scaleAspectFill
img.image = #imageLiteral(resourceName: "cat-icon")
img.layer.cornerRadius = 10
img.clipsToBounds = true
img.backgroundColor = color
return img
}()
addSubview(label)
addSubview(picture)
addConstraintsWithFormat(format: "H:|-8-[v0(44)]-8-[v1]-8-|", views: picture, label)
addConstraintsWithFormat(format: "V:|-8-[v0(44)]-8-|", views: picture)
addConstraintsWithFormat(format: "V:|-8-[v0]", views: label)
hasBeenSetUp = true
}
смотри в чем фигня. Ты решил сразу изучить все. То есть помимо самого тэйблВбю ты решил также узнать как добавлять сабвью из кода, и как выставлять констрэйнты автолэйяту.
А должен сначала сфокусироваться на чем-то одном. Например просто на тэйблвью
Anonymous
Andrew
Andrew
Anonymous
Вот почему.
это гопитеза, которая требует подтверждения.
Вот если бы ты написал внутри функции print("я внутри функции"), и у тебя бы в консоли было больше 25 строк - тогда это было бы подтверждением.
А пока, вполне возможно что все-таки выполнилась 25 раз. ячеек-то видно всего 9
Anonymous
Поэтому добавил это.
вот опять же, возвращаясь к началу разговора - как ты себе предполагал что мы должны были об этом догадаться? и что у тебя есть отдельный код который сетапит сам вид ячейки. И почему ты думаешь что эта инструкция , по которой ты делаешь - так делают все?
Anonymous
в общем, упрощай свой код, найди другую инструкцию, которая будет посвящена только тэйблвью,и ячейки будут уже готовы - или сториборде, или в xibе
Anonymous
потому что очевидно, что все сразу и вместе ты переварить не можешь. (не тебе упрек, вряд ли бы кто-то из начинающих смог бы)
Andrew
Ну, спасибо всё равно всем, кто ответил, пойду дальше копать.
Alex
По-моему, учиться создавать комплексные вью в коде нужно только тогда, когда ты этого не можешь сделать в сториборде или ксибе. Это адвансед тема которая новичкам не очень нужна.
O'Miay
канстрейты рулят XD
Anonymous
Lee Mi Hyun
https://twitter.com/flexmonkey/status/881789384735039489
Andrew
Stanislav
Весело у вас тут, опять коллективная телепатия 😄
Alex
Lee Mi Hyun
Слава сатане, тут нет срачей на тему "макось против винды"
Lee Mi Hyun
ну или мне пока таковые не попадались
S
ну так это очевидно же
Anonymous
Виндоблядей забанили всех.
Anonymous
Здесь только сливки общества.
alex_ti
Всем ✋🏻. Слушайте подскажите недалекому, что с webview не так ;))?
Stanislav
Все так, просто в настройках приложения вруби поддержку iPad
alex_ti
ок, можно нубу чуть поподробней )) пжста
Stanislav
Stanislav
Devices - Universal
Stanislav
Вкладка General настроек проекта
alex_ti
👌🏻 cпасибо бро, попробую
alex_ti
alex_ti
magic
alex_ti
спасибо )
Oleksii
Выполнил sudo rm -rf на папке, но оно меня не поняло и удалило все файлы пользователя, хочу восстановить с помощью тулзов, но что-то с сафари что может быть?
Ivan
Lee Mi Hyun
Lee Mi Hyun
Вообще, не знаю, как рм рф связано с тем, что у тебя на Сафари, что за папка-то была? Шрифты какие мож
Stanislav
Oleksii
была проблема, что в xcode в assets error был, что-то там Core-Simulator. Загуглил, на форуме Apple нашел команду с удалением папки Library/.../SimulatorsЧто-то-там. Запустил. Такая беда. Скорее всего у меня в terminal был вписан локальный путь... все равно не понятно че оно все захотело уфигачить, сейчас через рекавери восстановлю то что мне надо и перепрошьюсь. Chrome работает нормально
Firdavs
Как внутрь одного uiview добавить второй, но чтобы второй был наверху сдвинув содержание первого вниз?
Stanislav
StackView что ли?
Firdavs
нет
Firdavs
https://github.com/AssistoLab/DropDown
Firdavs
хочу наверху добавить свой элемент
Firdavs
там есть tableView, но доступа к нему нет, мог бы headerView добавить
Rinat
сори, вопрос немного не по теме, кто использовал плагин для сафари от lingualeo, официальный найти не могу, только с какого-то неизвестного сайта
Lee Mi Hyun
Lee Mi Hyun
да это ж тоже можно сделать без рм рф
Lee Mi Hyun
просто идешь в папку ~/library/developer/xcode, а там уже руками удаляешь
Lee Mi Hyun
через finder->go->go to folder
Lee Mi Hyun
а то все тут знают, думаю, что с рм рф накосячить можно еще как
Oleksii
Я не спорю)
Anonymous
Rizvan_13
*** -[Hoff.CartSummaryViewController tableView:heightForHeaderInSection:]: message sent to deallocated instance 0x7fcd65376bf0
Rizvan_13
Кто-нибудь сталкивался с подобной ошибкой. Ошибка возникает на ios 8.1
Rizvan_13
После переход с партретного режима в альбомный на ipad
Mikhail
я правильно понимаю, что сейчас в business chat российскую компанию нельзя зарегистрировать?
Mikhail
может кто-то знает
Lee Mi Hyun
или ты willTransition криво переопределил?
Lee Mi Hyun
Без кода мало что можно понять
Alexander
Господа, я правильное понимаю что в appStore до сих пор нет возможности быстро убрать багнутую версию из маркета, откатившись на предыдущую ?
Ilkhom
zakati stariy bild s novoy versiyey
Stanislav
Alexander
Anonymous
Коллеги, а курс geekbrains в Москве норм или не норм? Например "мобильный разработчик" . Или лучше в "специалист" при бауманке? Или лучше туториалов на Ютубе и Эппл ничего нет?
Anonymous
Уровень пред-джун 😀
Anonymous
Чем глубже погружаюсь, тем мне сложнее становится.
Anonymous
Stanislav