@ios_ru

Страница 2110 из 2351
Антон
21.06.2018
01:54:49
почему выводит where T: BaseAPI { methodB<L>(_ api: L) where L: BaseAPI{

аналог на с++: class BaseApi {}; class API: BaseApi {}; class DecodableAPI: BaseApi {}; template<class T> void methodA(T *a) { printf("methodA(T *a) {\n"); methodB(a); } void methodB(BaseApi *a) { printf("methodB(BaseApi &a) {\n"); } void methodB(API *a) { printf("methodB(API *a) {\n"); } void methodB(DecodableAPI *a) { printf("methodB(DecodableAPI *a) {\n"); } class BaseApiClass: public BaseApi {}; class APIClass: public API {}; class DecodableAPIClass: public DecodableAPI {}; BaseApiClass obj1; APIClass obj2; DecodableAPIClass obj3; void test() { methodA(&obj3); }

выводит methodA(T &a) { methodB(DecodableAPI &a) {

Ivan
21.06.2018
05:13:48
Google
Dmitry
21.06.2018
07:46:02
Всем доброе утро! Какую книгу порекомендуете по iOS разработке? На текущий момент интересует Swift с примерами реализации каких то базовых ui элементов (в частности очень интресеут работа с view без storyboard).

Ivan
21.06.2018
08:00:47
всем привет кто подскажет как происходит Вывод денег из AppStore?

как лучше это сделать

есть такая информация, Переводы делают каждый месяц если сумма превышает минимальный порог. если будет больше 150 долларов, то за май придут в начале июля

верна ли она?

Dima
21.06.2018
08:08:31
как можно отправить картинку запросом через аламофайр?



Ivan
21.06.2018
08:15:10
Эм читай как там апи хочет что бы ты прикладывал фотки, аттачменты

Johnny
21.06.2018
08:23:37
Можно ль удалить build Number ? У меня было версия 1.5 и build 3. Изменил версию на 1.5.1 а build тот же 3. Но надо было build 1. Можно ли удалить build и опять поставить в iTunes connect?

Johnny
21.06.2018
08:27:03
Зачем
По ошибке изменил версию а буилд оставил 3 думаю что надо буилд 1 при новой версии

Google
Kei
21.06.2018
08:27:14
Чтобы ответить на твой вопрос нужно знать что ожидает сервер. Ты делаешь не то чтобы не верно, просто не так как требует сервер

Илья
21.06.2018
08:27:43
Johnny
21.06.2018
08:30:30
Ну подумал что Apple ругаться будут что буилд номер слишком большой. Но если вы говорите что и так сойдёт то оставлю

Илья
21.06.2018
08:31:20
Ну подумал что Apple ругаться будут что буилд номер слишком большой. Но если вы говорите что и так сойдёт то оставлю
Всем плевать на номер билда, он просто должен быть выше, чем предыдущий, все правила

Kei
21.06.2018
08:32:57
я не нашел доку mailgun по получению картинок(
Судя по https://documentation.mailgun.com/en/latest/api-sending.html#sending прицеп к почте нужно отправить через attachment используя multipart/form-data об этом читать тут: https://stackoverflow.com/questions/31949118/send-post-parameters-with-multipartformdata-using-alamofire-in-ios-swift

Johnny
21.06.2018
08:34:02
Всем плевать на номер билда, он просто должен быть выше, чем предыдущий, все правила
OK. Оставлю так. Было версия 1.5 и буилд 2. Мне Xcode дал ошибку что версия должна быть выше. Изменил версию но буилд оставил 3 ))))

Sergey
21.06.2018
08:42:37
Почитай по версионность, то что ты сделал это апнул версию

Тебе нужно было апнуть версию билда

Konstantin
21.06.2018
08:43:33
Всем привет Вопрос Где и как получить D-U-N-S® Number?

Алексей
21.06.2018
08:46:27
Всем привет Вопрос Где и как получить D-U-N-S® Number?
Если тебе это необходимо для регистрации Apple сертификата, то они это вроде сами могут сделать. А так это платная процедура

Konstantin
21.06.2018
08:47:13
Если тебе это необходимо для регистрации Apple сертификата, то они это вроде сами могут сделать. А так это платная процедура
Мне это нужно, что бы создать аккаут разработчика как организация, это поле там обязательное...

Алексей
21.06.2018
08:51:39
Мне это нужно, что бы создать аккаут разработчика как организация, это поле там обязательное...
https://developer.apple.com/support/D-U-N-S/ Читай раздел "Requesting a D-U-N-S Number" для тебя важно именно это предложение и ссылка "You will be asked for the following information when requesting a D-U-N-S Number using the D-U-N-S Number look up tool:"

Ivan
21.06.2018
09:23:00
Можно ль удалить build Number ? У меня было версия 1.5 и build 3. Изменил версию на 1.5.1 а build тот же 3. Но надо было build 1. Можно ли удалить build и опять поставить в iTunes connect?
Билд номер должен быть всегда +1 предыдущего билда (для этого я при билде релиз апликахи повышаю номер билда скриптом). На то и нужен

А версия должна быть по правилам semver

https://semver.org

Обще принятое правило

Johnny
21.06.2018
09:26:08
А версия должна быть по правилам semver
Мне Xcode подсказал что и версию нужно менять. Я версию поменял с 1.5 до 1.5.1 и буилд поставил 3 а я думаю что надо было 1 при новой версии.

Google
Johnny
21.06.2018
09:26:56
Не
Тогда это круто

Egor
21.06.2018
09:28:06
Привет! Кто может подсказать, как в фейсбуке генерируется музыкальное видео из выложенных фото и видео? Это на серваке создаётся или в приложении?

Ivan
21.06.2018
09:28:15
Почему должен, это желательная практика
Лучше считать что должен, самому легче будет потом

Eugene
21.06.2018
09:28:16
Мне Xcode подсказал что и версию нужно менять. Я версию поменял с 1.5 до 1.5.1 и буилд поставил 3 а я думаю что надо было 1 при новой версии.
номер билда и номер версии - твой личный выбор. обычно все повышают на +1, но точно так же можешь в каждой версии номера билдов начинать с единицы

Илья
21.06.2018
09:29:10
Лучше считать что должен, самому легче будет потом
Что это облегчит. Это вопрос, как табы или пробелы, кто как хочет, так и живет

Айтюнс пошлет в лес если попытаешься уменьшить номер билда
Если новая версия, то можно меньше предыдущей

Ivan
21.06.2018
09:29:37
Если новая версия, то можно меньше предыдущей
Разве? Ну... ладно, но по мне лучше оставить, будешь знать сколько уже билдов наклепал за всю жизнь апликахи)

Владислав
21.06.2018
09:31:48
Добрый день, коллеги. Подскажите, пожалуйста. Нужно при нажатии на UIImageView в ячейке таблицы открыть UIImagePickerController. Куда лучше вынести код открытия этого контроллера? Если в ячейку, то вроде бы обязанность навигации лежит на контроллере, а если в контроллер, то он разрастется, если будет за действия в ячейках отвечать.

Ivan
21.06.2018
09:33:25
В любой момент можешь вынести тейбл вью в отдельный класс и там пусть будет основная масса кода

Владислав
21.06.2018
09:33:31
В яйчейки имхо не должно быть такого, по мне в яйчейки кода логики не должно быть или минимально
Но тогда контроллер превратится в Massive View Controller. Плюс, ячейка переиспользуется и эта же логика нужна и на других экранах

Vladislav
21.06.2018
09:34:16
Лучше отдельный протокол и экстеншеном подключать логику туда, куда надо

Ivan
21.06.2018
09:34:35
Ну это да смотря какой язык

Я обж ток кодю просто

Владислав
21.06.2018
09:34:58
Swift

Google
Ivan
21.06.2018
09:35:19
Ну тогда Владислав лучше подскажет

Владислав
21.06.2018
09:36:11
Плюс еще и RxSwift использую, можно подключить тап по UIImageView avatarImageView.rx.tapGesture().when(.recognized).map { _ in return }

вот к этому UIImagePickerController.rx.createWithParent(self) { picker in picker.sourceType = .photoLibrary picker.allowsEditing = true } .flatMap { $0.rx.didFinishPickingMediaWithInfo } .take(1) .map { info in return info[UIImagePickerControllerEditedImage] as? UIImage } .unwrap() .map { image in UIImageJPEGRepresentation(image, 0.85) } .bind(to: viewModel.imageData) .disposed(by: rx.disposeBag)

Владислав
21.06.2018
09:37:14
Admin
ERROR: S client not available

Владислав
21.06.2018
09:38:06
Какой ужас
Что не так? Объясните, пожалуйста, если считаете что что-то не так

Vladislav
21.06.2018
09:41:07
вот к этому UIImagePickerController.rx.createWithParent(self) { picker in picker.sourceType = .photoLibrary picker.allowsEditing = true } .flatMap { $0.rx.didFinishPickingMediaWithInfo } .take(1) .map { info in return info[UIImagePickerControllerEditedImage] as? UIImage } .unwrap() .map { image in UIImageJPEGRepresentation(image, 0.85) } .bind(to: viewModel.imageData) .disposed(by: rx.disposeBag)
protocol AvatarImageViewDelegate {} extension AvatarImageViewDelegate { func didPickAvatarImage(параметры: индекс ячейки и индекс секции) { //ваша реализация } } extension YourViewController: AvatarImageViewDelegate {} и дальше ячейке вешаете на тап этот метод didPickAvatarImage

это очень вкратце

Aleksandr
21.06.2018
09:41:22
Кто-то должен быть делегатом ячейки и узнать что там тапнули на картинку

Vladislav
21.06.2018
09:42:12
и передавать замыкания туда как обработчики, но это уже вкусовщина

Aleksey
21.06.2018
09:43:20
Разве? Ну... ладно, но по мне лучше оставить, будешь знать сколько уже билдов наклепал за всю жизнь апликахи)
инкремент билда вообще стоит автоматизировать, у меня на одном проекте сркиптом по каждому коммиту увеличвается(мне не нравится), на втором фастлейн инкрементит при отправке в аппстор

Aleksandr
21.06.2018
09:45:23
и передавать замыкания туда как обработчики, но это уже вкусовщина
а потом это превратится в такое... с которым придется жить плавали, знаем - спасибо, но нет

Vladislav
21.06.2018
09:47:34
чтобы в каждом конкретном случае не писать одинаковую реализациию

Google
Aleksey
21.06.2018
09:48:28
почему в самом классе не реализовать, чем тут экстеншн помогает то?

Vladislav
21.06.2018
09:50:02
почему в самом классе не реализовать, чем тут экстеншн помогает то?
тем что вы описываете одну логику один раз, а потом этой логикой расширяете множество существующих классов

Aleksandr
21.06.2018
09:50:30
потому что потом хрен разберешься, где реализация методов datasource, а где - delegate

и // MARK: помогают не особо

Aleksey
21.06.2018
09:51:06
тем что вы описываете одну логику один раз, а потом этой логикой расширяете множество существующих классов
сча будет нубский вопрос))): как один экстеншн к двум классам прикрутить?

Roman
21.06.2018
09:51:17
никак пхд

Vladislav
21.06.2018
09:51:34
сча будет нубский вопрос))): как один экстеншн к двум классам прикрутить?
вы экстендите протокол реализацией, а классы экстендите (либо комформите, как больше нравится) протоколом

Aleksandr
21.06.2018
09:51:54
протокол с дефолтной имплементацией?

Vladislav
21.06.2018
09:52:46
Protocol methods must not have bodies

Aleksey
21.06.2018
09:53:35
Protocol methods must not have bodies
а в расширении можно что ли?

Vladislav
21.06.2018
09:53:43
Да, о том и речь.

Aleksey
21.06.2018
09:55:14
ага, это понятно, но впорос то был про расширение класса, кроме внешнего вида, это больше ничего не дает

Vladislav
21.06.2018
09:56:12
Что вы имеете в виду под "внешним видом"?

Aleksey
21.06.2018
09:57:43
разделение реализации класса и реализации протокола в коде, часто вижу, когда в одном файле сначала класс, потом ниже его расширение, по мне так это перебор

Aleksandr
21.06.2018
09:58:04
вообще говоря, есть разница между реализацией в типе и в экстеншене - в плане диспатчинга и производительности

как делать - надо договориться в рамках code style guide

Страница 2110 из 2351