Вопросы с тегами [iphone]

1

голосов
1

ответ
80

Просмотры

Обнаружение до iPhone выключается?

это позволило обнаружить до того, как iPhone выключается для вызова действия, как сохранение данных в постоянном хранилище и т.д. для Swift я попробовал функцию appWillEnterBackground и appWillTerminate, но didn't работу, когда я выключить телефон в приложении
SwiftNewling
1

голосов
2

ответ
4.1k

Просмотры

отправка смс программно в Iphone

Как вы можете отправить SMS программно определенным числом, выбранным в списке контактов в iPhone?
user564963
0

голосов
1

ответ
25

Просмотры

Как избежать оповещения вызовов в IOS

Я разрабатываю приложение IOS с быстрым поясню, как мое приложение работает приложение будет подключаться к ПК клиенту с TCP / IP и получите номер телефона, чтобы набрать Когда я пытаюсь отправить номер в приложение, чтобы сделать вызов с телефоном Показывая оповещения с 2 кнопками «Вызов» и «Отмена». Есть ли способ избежать этого предупреждения? Примечание: Пользователь знает, что мое приложение будет делать вызов и я буду иметь соглашение с пользователем
Mahmoud Wizzo
3

голосов
2

ответ
124

Просмотры

UISearchController wrong animation on swipe back then disappearing

Для того, чтобы сделать эту короткие, у меня есть главный контроллер представления, который имеет навигационную панель, скрытую от навигационного контроллера этого VC, я толкать другой контроллер представления, который имеет панель навигации видимую. Затем добавить searchController к navigationItem добавить SearchBar, когда я прокручиваю вниз. Все работает отлично, пока не красть назад, чтобы вытолкнуть VC. Панель навигации будет анимировать покинуть экран с ВК, но SearchBar будет живой, как будто это происходит в месте. Что еще хуже, если я отменю салфетки поп, весь SearchBar исчезает и черный вид появляется вместо (я думаю, что фон searchController OW любого вида фона). Я попробовал все, это несколько строк кода, пока я тянущие мои волосы, чтобы решить эту проблему. Я знаю, что могу просто отключить салфетки, чтобы выскочить, но я не» т хотим, чтобы (+ даже при нажатии назад SearchBar одушевляет в том же странным образом), и я не хочу, чтобы добавить SearchBar любым другим способом. В прилагаемом видео я просто ударяя палец, чтобы показать анимацию. - (недействительными) viewDidLoad {[супер viewDidLoad]; self.definesPresentationContext = ДА; [Не self.navigationController setNavigationBarHidden: NO]; если (@available (IOS 11.0, *)) {self.searchController = [[UISearchController Alloc] initWithSearchResultsController: ноль]; _searchController.delegate = самостоятельно; _searchController.searchResultsUpdater = самостоятельно; _searchController.searchBar.placeholder = @ "Поиск"; self.navigationItem.searchController = _searchController; self.navigationItem.hidesSearchBarWhenScrolling = ДА; }} м просто ударяя палец, чтобы показать анимацию. - (недействительными) viewDidLoad {[супер viewDidLoad]; self.definesPresentationContext = ДА; [Не self.navigationController setNavigationBarHidden: NO]; если (@available (IOS 11.0, *)) {self.searchController = [[UISearchController Alloc] initWithSearchResultsController: ноль]; _searchController.delegate = самостоятельно; _searchController.searchResultsUpdater = самостоятельно; _searchController.searchBar.placeholder = @ "Поиск"; self.navigationItem.searchController = _searchController; self.navigationItem.hidesSearchBarWhenScrolling = ДА; }} м просто ударяя палец, чтобы показать анимацию. - (недействительными) viewDidLoad {[супер viewDidLoad]; self.definesPresentationContext = ДА; [Не self.navigationController setNavigationBarHidden: NO]; если (@available (IOS 11.0, *)) {self.searchController = [[UISearchController Alloc] initWithSearchResultsController: ноль]; _searchController.delegate = самостоятельно; _searchController.searchResultsUpdater = самостоятельно; _searchController.searchBar.placeholder = @ "Поиск"; self.navigationItem.searchController = _searchController; self.navigationItem.hidesSearchBarWhenScrolling = ДА; }} если (@available (IOS 11.0, *)) {self.searchController = [[UISearchController Alloc] initWithSearchResultsController: ноль]; _searchController.delegate = самостоятельно; _searchController.searchResultsUpdater = самостоятельно; _searchController.searchBar.placeholder = @ "Поиск"; self.navigationItem.searchController = _searchController; self.navigationItem.hidesSearchBarWhenScrolling = ДА; }} если (@available (IOS 11.0, *)) {self.searchController = [[UISearchController Alloc] initWithSearchResultsController: ноль]; _searchController.delegate = самостоятельно; _searchController.searchResultsUpdater = самостоятельно; _searchController.searchBar.placeholder = @ "Поиск"; self.navigationItem.searchController = _searchController; self.navigationItem.hidesSearchBarWhenScrolling = ДА; }}
Eph Bee
1

голосов
3

ответ
1.7k

Просмотры

UIScrollView Уведомление?

Есть ли уведомление посыл когда UIScrollView изменяет это состояние прокрутки? Я хотел бы послушать тех, кто уведомление, а не использовать методы делегата? Любая помощь очень ценится ....
Ab'initio
1

голосов
0

ответ
374

Просмотры

Реагировать Native экспа там были пробы загрузки этого опыта

Когда я бегу «ехр старт» из командной строки. мой родной реагировать приложение строит отлично на тренажере и на устройстве. я также бегала ехр начать --no-DEV, который я предполагал, должен был показать, что будет работать с режимом DEV флаг, когда я запустить ехр опубликовать. Когда я запускаю «ехр опубликовать» я получаю Был проблема при загрузке этого опыта. Попробуйте еще раз Ошибка: Модуль AppRegistry не зарегистрирован вызываемая модуль (вызов runApplication) Код ошибки: CLIENT_LOADING_ERROR Код состояния: 2 просто запутался, потому что, если я запустить команду с режимом Dev выключен он по-прежнему нагрузки и отлично работает на тренажере и на устройстве, пока я запустить ехр публиковать и запустить файл ипа на устройстве, то он ломается.
James Woods
1

голосов
2

ответ
62

Просмотры

добавить / removeClass Безразлично `работы на iPhone

Это корректно работает в браузере, но не работает на iPhone. Также я использовал вар $ событий = ($ ua.match (/ (Айпод | iPhone | IPad) / я))? "Touchstart": "нажмите"; Он также Безразлично `работа на iPhone HTML Привет CSS .mod_section.active {дисплей: нет; } .Mod_section {дисплей: блок; } JQuery функция мод () {$ ( 'mod_section. ') AddClass (' активный'). }
Eric Lee
1

голосов
1

ответ
64

Просмотры

Почему обновление не отображается для всех пользователей, когда передача приложение на новое приложение магазина учетной записи?

Я опубликовал приложение к магазину приложений со счета и предположу, что моя команда была TeamA. Таким образом, идентификатор приложения был abc123.com.companyname.appname. Теперь я перенес приложение к моей новой учетной записи. Так что теперь, когда я собираюсь запустить обновление я обнаружил ошибку, как показано ниже: «ПРЕДУПРЕЖДЕНИЕ ITMS-90076» Потенциальная потеря Keychain Access. В предыдущей версии программного обеспечения имеет значение приложения идентификатора [ «»] abc123.com.companyname.appname и новую версию программного обеспечения, представленную имеет прикладной-идентификатор [ «xyz456.com.companyname.appname»]. Это приведет к потере брелки доступа я игнорировала проблему и опубликовала сборку к магазину приложений. После обзора, приложение было опубликовано. Но это не показывает обновление предыдущей версии (Люди, которые устанавливают приложение, которое публикуется на TeamA). Поэтому, когда эти пользователи идут к этому AppStore она показывает открытые действия не обновлять вариант. Как я могу показать эту новую версию для обновления предыдущей версии для всех пользователей? Пожалуйста, помогите мне.
asif akbar
1

голосов
0

ответ
128

Просмотры

Xcode 9 Ошибки После установки в Сфере реагирует родную для локального хранения

Xcode 9 ошибки после установки Realm в React-Native для локального хранения. не может EXEC «myPath / Source / node_modules / область / ЦСИ /../ скрипты / ccache-clang.sh» (Доступ запрещен), не удалось с выходом кода 71. Помогите мне решить эту ошибку. Спасибо
manoj
1

голосов
0

ответ
1.7k

Просмотры

Права доступа, чтобы сохранить файл в папке Документов на прошивке

У меня есть проблема с сохранением / замена файлов изображений в папку Documents в моем приложении. В AppDelegate У меня есть два свойства: пусть documentsDirectory:. URL = {возвращение FileManager () URL (для: .documentDirectory в: .userDomainMask) .first! } () Пусть defaultDirectory: URL = {вернуть Bundle.main.bundleURL.appendingPathComponent ( "DefaultBlocks.bundle", isDirectory: правда)} () Похоже, что путь действительно, есть выход журнала: [Verbose] (приложение: didFinishLaunchingWithOptions :)> Docs URL: файл /// вар / мобильный / Контейнеры / Data / Application / 6ED04DA7-077F-4AE2 AB74-2EED02932823-/ Документы / [Многословный] заявка (: didFinishLaunchingWithOptions :)> Значение по умолчанию URL: файл / //var/containers/Bundle/Application/A11D6A4A-E108-483F-86EC-BBFA10E77F72/TheAwesomeApp.app/DefaultBlocks.bundle/ Мое приложение логика: если пользователь запросил, чтобы перезагрузить изображения по умолчанию, затем заменить изображения в папке Документов с эталонными копиями из приложения пачки. Я пытаюсь осуществить замену в коде (вызывается из didFinishLaunchingWithOptions): функ ReloadDefaults () {пусть FileManager = FileManager.default делать {пусть destDirURL = appDelegate.documentsDirectory пусть defaultURLs = Bundle.main.urls (forResourcesWithExtension: "PNG", подкаталог: "DefaultBlocks.bundle / _default_images_") для URL в defaultURLs! {Пусть destURL: URL = destDirURL.appendingPathComponent (url.lastPathComponent) log.verbose ( "URL Src: \ (URL)") log.verbose ( "Dest URL: \ (destURL)") _ = попробовать fileManager.replaceItemAt (destURL , withItemAt: url.absoluteURL)}} поймать {log.error ( "ошибка копирования файла: \ (ошибка. Bundle / _default_images_ / [Verbose] ReloadDefaults ()> Dest URL: файл ///var/mobile/Containers/Data/Application/6ED04DA7-077F-4AE2-AB74-2EED02932823/Documents/image-512.png К сожалению, я получил сообщение об ошибке для вызова replaceItemAt: [ошибка] ReloadDefaults ()> ошибка копирования файла: у вас нет разрешения на сохранение файла «образ-512.png» в папке «Документы». У меня есть последние версии Xcode и прошивка. Bundle / _default_images_ / [Verbose] ReloadDefaults ()> Dest URL: файл ///var/mobile/Containers/Data/Application/6ED04DA7-077F-4AE2-AB74-2EED02932823/Documents/image-512.png К сожалению, я получил сообщение об ошибке для вызова replaceItemAt: [ошибка] ReloadDefaults ()> ошибка копирования файла: у вас нет разрешения на сохранение файла «образ-512.png» в папке «Документы». У меня есть последние версии Xcode и прошивка.
Alexey Malashin
1

голосов
0

ответ
27

Просмотры

Xcode 9.2 заклинивания на добавление учетных записей после обновления High Sierra

После обновления High Sierra, я не могу добавить счета в Xcode. Это заклинивание на добавление счета и продолжает погрузку infinity.I иметь две версии Xcode я; е, 8.3.3 и 9.2, и оба испытывают те же проблемы.
Tabish Sohail
1

голосов
0

ответ
160

Просмотры

Iframe не прокрутки на iPhone 7

У меня есть встраивание на странице. Но когда я открываю его на iPhone 7 (Safari), он не прокручивается. Если изменить ориентацию экрана с портретной на альбомную, скроллинг работает. После этого, если изменить ориентацию экрана на портрет, скроллинг будет работать. Я также протестирован на iPhone 6s (Safari), она работает без каких-либо проблем. Какие-либо предложения?
Deepak P C
1

голосов
1

ответ
60

Просмотры

Есть ли способ, чтобы сбросить все сегодня расширение (виджеты) на устройстве?

Я разрабатываю расширение сегодня (виджет) и заметил, что часто бывает необходимо, чтобы получить чистое состояние, если что-то изменилось. Но вид сегодня не правильно сбросить расширение виджета, при запуске новой сборки расширения. Также не работает, когда на цели расширения с Xcode. Иногда я получаю «не может показывать данные» или что-то подобное. Единственный способ, как представляется, чтобы удалить приложение из установки устройства и повторного запуска с Xcode. Это боль, потому что мне нужно вводить тестовые данные вручную каждый раз ... Вопрос: есть ли способ сбросить мнение сегодня в общей сложности на устройстве? Я не заинтересован в том же самом на тренажере, мне нужно сделать это на устройстве.
brainray
1

голосов
0

ответ
412

Просмотры

Как сохранить WebSocket соединение открыто в то время как IOS приложение в фоновом режиме?

Как говорит название, как я в состоянии держать соединение открытым и получать сообщения, даже если приложение работает в фоновом режиме? Потому что теперь, каждый раз, когда я установить его на задний план или я заблокировать мой iPhone и разблокировать его, WebSocket обрывается. Я уже нашел решение, и он говорит, что я должен позволить Voip в моем Info.plist, а затем просто сделать socket.voipEnabled = верно, но потом говорит, что WebSocket не имеет voipEnabled члена. Кто-нибудь есть быстрый пример того, как запустить WebSocket в фоновом режиме? Я использую рамки STARSCREAM для WebSockets Спасибо заранее
Dominik Brandstetter
1

голосов
1

ответ
1k

Просмотры

Как построить базу в прошивкой для симулятора и устройства (IPA)

Я пытаюсь использовать библиотеку (рамочный) в наш проект IOS (https://github.com/auth0/JWTDecode.swift). Он обеспечивает интерфейс cocoapod для добавления / использования инфраструктуры. Но, к сожалению, в моем проекте, мы не включили cocoapods и в данный момент не представляется возможным интегрировать cocoapods в наш проект IOS. Так что я вниз загружен исходный код рамки из мерзавца ступицы и построить структуру. Таким образом я получил файл .framework и что мы добавили в наш проект. Эта система работает отлично в тренажере и при попытке построить ИПС (архив) это не удается, и говорит, что использование неразрешенного идентификатора «декодирование». Метод «расшифровывает» является одним из членов JWTDecode. Может кто-нибудь помочь мне построить структуру, которая работает как для симулятора и устройств. Я не знаком с созданием рамок в прошивке.
user867662
1

голосов
0

ответ
17

Просмотры

Есть HTML-теги работа для отображения субтитров на родном iPhone плеере?

На моем сайте, у меня есть веб-страницу с видео-плеер Flowplayer. Мое видео содержит субтитры. Они форматируются HTML тегов, таких как или. Когда я пытаюсь просмотреть мое видео на iPhone с Safari, он является родным игроком iPhone, который начинается и форматирование не учитываются. Кто-нибудь знает, если родной iPhone плеер поддерживает субтитры теги для форматирования?
Andréa Cauchoix
1

голосов
2

ответ
126

Просмотры

Пользовательские UIViews для коллажа App

Я работаю над приложением коллажа, и я успешно строить простые коллажи, но теперь я застрял на том, как строить сложные коллажи в стиле, как в следующем изображении Как я смогу создать пользовательский вид, как на картинке, у меня есть пытались использовать Beizerpath и применяя маскирующий к просмотру с пути beizerpath, но я не могу добавить тень к слою, когда я применить маску к виду. Любая помощь будет оценена. Как я могу точно создать тип представления в изображении с тенью позади них?
Bilal Mustafa
1

голосов
0

ответ
157

Просмотры

Collection view cells overlap animation in Bottomsheet

I need to apply animation like the bottom sheet where Collection View cells overlap each other when closed, and wide opened when bottom sheet is opened. I have achieved the bottom sheet with Collection View with pagination, but need to apply animation that shows only current cell and other cells behind it when bottom sheet is closed. Here is my Bottom Sheet Class, and some images as an example what I need to achieve: class ScrollableBottomSheetViewController: UIViewController { @IBOutlet var pageControl: UIPageControl! @IBOutlet var collection: UICollectionView! @IBOutlet var headerView: UIView! let fullView: CGFloat = 0//50 var partialView: CGFloat { return UIScreen.main.bounds.height - 50 } let collectionMargin = CGFloat(32) let itemSpacing = CGFloat(10) let itemHeight = CGFloat(333) var itemWidth = CGFloat(0) var currentItem = 5 override func viewDidLoad() { super.viewDidLoad() self.definesPresentationContext = true self.collection.delegate = self self.collection.dataSource = self self.collection.register(UINib(nibName:"AdsCollectionViewCell", bundle: nil), forCellWithReuseIdentifier: "default") let gesture = UIPanGestureRecognizer.init(target: self, action: #selector(ScrollableBottomSheetViewController.panGesture)) gesture.delegate = self view.addGestureRecognizer(gesture) let layout: UICollectionViewFlowLayout = UICollectionViewFlowLayout() //CGFloat(219) // itemWidth = UIScreen.main.bounds.width - collectionMargin * 2.0 print(itemWidth) layout.sectionInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0) layout.itemSize = CGSize(width: itemWidth, height: itemHeight) layout.headerReferenceSize = CGSize(width: collectionMargin, height: 0) layout.footerReferenceSize = CGSize(width: collectionMargin, height: 0) layout.minimumLineSpacing = itemSpacing layout.scrollDirection = .horizontal collection!.collectionViewLayout = layout collection?.decelerationRate = UIScrollViewDecelerationRateFast } func scrollViewWillEndDragging(_ scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer) { let pageWidth = Float(itemWidth + itemSpacing) let targetXContentOffset = Float(targetContentOffset.pointee.x) let contentWidth = Float(collection!.contentSize.width ) var newPage = Float(self.pageControl.currentPage) if velocity.x == 0 { newPage = floor( (targetXContentOffset - Float(pageWidth) / 2) / Float(pageWidth)) + 1.0 } else { newPage = Float(velocity.x > 0 ? self.pageControl.currentPage + 1 : self.pageControl.currentPage - 1) if newPage < 0 { newPage = 0 } if (newPage > contentWidth / pageWidth) { newPage = ceil(contentWidth / pageWidth) - 1.0 } } self.pageControl.currentPage = Int(newPage) let point = CGPoint (x: CGFloat(newPage * pageWidth) + itemSpacing, y: targetContentOffset.pointee.y) targetContentOffset.pointee = point } override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) prepareBackgroundView() } override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) UIView.animate(withDuration: 0.6, animations: { [weak self] in let frame = self?.view.frame let yComponent = self?.partialView self?.view.frame = CGRect(x: 0, y: yComponent!, width: frame!.width, height: frame!.height)// - 100) }) } @objc func panGesture(_ recognizer: UIPanGestureRecognizer) { let translation = recognizer.translation(in: self.view) let velocity = recognizer.velocity(in: self.view) let y = self.view.frame.minY if (y + translation.y >= fullView) && (y + translation.y 1.3 ? 1 : duration UIView.animate(withDuration: duration, delay: 0.0, options: [.allowUserInteraction], animations: { if velocity.y >= 0 { self.view.frame = CGRect(x: 0, y: self.partialView, width: self.view.frame.width, height: self.view.frame.height) } else { self.view.frame = CGRect(x: 0, y: self.fullView, width: self.view.frame.width, height: self.view.frame.height) } }, completion: { [weak self] _ in if velocity.y < 0 { self?.collection.isScrollEnabled = true } }) } } func prepareBackgroundView() { let blurEffect = UIBlurEffect.init(style: .dark) let visualEffect = UIVisualEffectView.init(effect: blurEffect) let bluredView = UIVisualEffectView.init(effect: blurEffect) bluredView.contentView.addSubview(visualEffect) visualEffect.frame = UIScreen.main.bounds bluredView.frame = UIScreen.main.bounds view.insertSubview(bluredView, at: 0) } } extension ScrollableBottomSheetViewController : UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout { func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { return 10 } func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "default", for: indexPath) return cell } } extension ScrollableBottomSheetViewController: UIGestureRecognizerDelegate { // Solution func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool { let gesture = (gestureRecognizer as! UIPanGestureRecognizer) let direction = gesture.velocity(in: view).y let y = view.frame.minY if (y == fullView && collection.contentOffset.x == 0 && direction > 0) || (y == partialView) { collection.isScrollEnabled = false } else { collection.isScrollEnabled = true } return false } }
Nasir Khan
1

голосов
1

ответ
1.3k

Просмотры

Масштаб фоновое изображение для iPhone 10

Я использую Swift 4, XCode 9. У меня есть приложение IOS, которая имеет фоновое изображение, которое было задано с использованием раскадровки. Фактический файл раскадровки рассматривается с отсчёта на iPhone SE. Тем не менее, я никогда не имел проблем с масштабированием изображения до больших размеров телефонов, только теперь для iPhone 10. Это не будет заполнять весь экран. Как я могу это исправить? Фон отображается через зрение изображения. Я попытался изменить высоту представления изображения как с помощью раскадровки и программно не повезли. Опять же, это только проблема на iPhone 10. EDIT: Я несколько исправил эту проблему путем добавления определенного iPhone X Launch изображения, но теперь мои компоненты все смещены влево
goat
1

голосов
0

ответ
51

Просмотры

UIPasteboardChanged уведомление не называется в Универсальной буфере обмена

С универсальной Clipboard я ожидал, что уведомление UIPasteboardChanged может быть вызвано, когда пользователь делает копию с ИМАК (или Macbook) и имеет приложение на переднем плане. Есть ли способ, чтобы поймать это событие?
Tiago Almeida
1

голосов
1

ответ
47

Просмотры

Как потеряли приложения телефон находя кольцо на Iphone даже в беззвучном режиме и App Killed заявил

Есть много приложения «устройства Apple Finder» в магазине. Многие из них помогают пользователю позвонить в Iphone, даже если телефон находится в беззвучном режиме. Я пытаюсь выяснить, как это достигается. Как мы можем играть звук на iPhone, который является бесшумным режимом. Любой знает Apple, поддерживаемую Framework или библиотеку для достижения этой цели. Я не нашел какие-либо темы о том, как может приложение делает телефонный звонок на беззвучном режиме и даже в приложении убило состояние. Пожалуйста, помогите мне.
SumiSadiq
1

голосов
1

ответ
19

Просмотры

Перемещение UICollectionViewCell, что в данный момент не загружен

Я использую Firebase создать сетевое приложение для клиента. Для каждого пользователя, я добавляю наблюдатель его Firebase собственности метки времени, что означает, что, когда пользователь загружает обновление статуса, то Firebase наблюдатель сработал так, что клетка пользователей в сырьевом движении к вершине (каждый пользователь имеет только одну ячейки) , Вот Firebase код: Database.database () ссылка () ребенок (forUser.userID) .child ( "метка") наблюдать (.value) {(снимок) в случае пусть метки времени = snapshot.value как...? Int {если пусть клетка = self.feedCollectionView.cellForItem (по адресу: indexPath), как? FeedCell {self.feedCollectionView.moveItem (по адресу: indexPath, чтобы: IndexPath (строка: 0, раздел: 0))}}} Это, хотя вполне возможно, что у меня есть 100-200 пользователей и, возможно, последние из них обновляют свой статус и должен быть перемещено в верхнюю часть, даже если никогда даже не были загружены его вид сбора клетки. Когда я запускаю это, он печатает для каждой видимой ячейки, что она подвижна и для каждой невидимой клетки, что она не может получить доступ к разгруженным клеткам. Как я могу получить доступ к ячейке, которая никогда не была загружена и переместить его на вершину?
Jonas
1

голосов
0

ответ
564

Просмотры

Swift текста в речь не работает на устройстве, но работать на тренажере

Проблема в том, у меня есть осуществление TextToSpeech на быстрой и удачливый он не работает на моем iPhone, но когда я использую тренажер, это делает! Вот простой код: импорт UIKit импорт AVFoundation класс ViewController: UIViewController, AVSpeechSynthesizerDelegate {переопределение функ viewDidLoad () {super.viewDidLoad ()} переопределение функ didReceiveMemoryWarning () {super.didReceiveMemoryWarning ()} @IBAction функ buttonPushed (отправитель: UIButton) { пусть произнесение = AVSpeechUtterance (строка: "Это тест") utterance.voice = AVSpeechSynthesisVoice (язык: "EN-US") пусть голоса = AVSpeechSynthesizer () voice.delegate = собственный голос. говорить (произнесение)}} Он используется для работы, прежде чем я обновить мою Xcode до версии 9.2, так что я не знаю, что делать. Провели весь день на этом и ничего! Жутко, есть другой контроллер представления, который я использую для записи голоса и передать его в текст (speechToText) и когда я пытаюсь это, то TextToSpeech начать работать на моем iPhone, что это единственный способ, которым это работает. Я не знаю, почему, как мой TextToSpeech и speechToText находятся в разных контроллерах зрения, и они не связаны между собой. Любая помощь будет очень высоко ценится! знаю, почему, как мой TextToSpeech и speechToText находятся в разных контроллерах зрения, и они не связаны между собой. Любая помощь будет очень высоко ценится! знаю, почему, как мой TextToSpeech и speechToText находятся в разных контроллерах зрения, и они не связаны между собой. Любая помощь будет очень высоко ценится!
Rafael Paz
1

голосов
1

ответ
66

Просмотры

Как показать номера здания на яблоне карте?

мы можем показать номера здания на яблочной карте? если да, то как мы можем достичь этого? пожалуйста, смотрите скриншот.
Bhupesh
1

голосов
1

ответ
298

Просмотры

TextField дно с iPhone X в Swift

Я новичок в Swift, и у меня есть проблема с iPhone X. Я после этого учебника: https://www.youtube.com/watch?v=FDay6ocBlnE&index=8&list=PL0dzCUj1L5JEfHqwjBV0XFb9qx9cGXwkq для того, чтобы создать чат приложения. Моя проблема заключается в том, что TextField крепится к нижней части, и это не хорошо для iPhone X. Я действительно не знаю, как я могу изменить это, учитывая, что я больше знаком с раскадровкой и здесь, то collectionViewController полностью программно. Я искал много других учебников, но я не нашел ничего, чтобы помочь. Это мой код: Вид снизу (с текстовым полем): класс ChatInputContainerView: UIView, UITextFieldDelegate {// ... переопределить инициализации (кадр: CGRect) {super.init (рама: рама) BackgroundColor = .red // .. .} требует инициализации (кодер aDecoder: NSCoder)? {FatalError (» UITextFieldDelegate, UICollectionViewDelegateFlowLayout, UIImagePickerControllerDelegate, UINavigationControllerDelegate {пользователь вар: Userm? {? DidSet {navigationItem.title = пользователь .username loadMessages ()}} вар сообщений = [Message] () функ loadMessages () {охранник пусть toId = пользователь .id еще {возвращение} Api.Message.observeUserDiscussion (toId: toId ) {(сообщение) в self.messages.append (сообщение) DispatchQueue.main.async (выполнить: {self.collectionView .reloadData () // прокручивать до последнего индекса пусть indexPath = IndexPath (пункт: self.messages.count - 1, раздел: 0) self.collectionView .scrollToItem (по адресу: indexPath, по адресу: .bottom, анимированные: истина)})}} пусть CellID = "CellID"? 10) inputContainerView.backgroundSendButtonView.roundCorners ([topRight, .bottomRight.], Радиус: 22)} ленивым вар inputContainerView: ChatInputContainerView = {пусть chatInputContainerView = ChatInputContainerView (рама: CGRect (х: 0, у 0, ширина: self.view .frame.width, высота: 54)) chatInputContainerView.chatLogController = самовозврата chatInputContainerView} () функ handleParamsMessage () {Print ( "Титулы") пусть раскадровка: UIStoryboard = UIStoryboard (название: "Main", расслоение: ноль) пусть detailMessage = storyboard.instantiateViewController (withIdentifier: "MessageDetailTableViewController"), как! MessageDetailTableViewController если позволяют пользователю = пользователь {detailMessage.userId = user.id! self.navigationController? .pushViewController (detailMessage, анимированные: истина)}} функ handleUploadTap () {пусть imagePickerController = UIImagePickerController () imagePickerController.allowsEditing = TRUE imagePickerController.delegate = само //imagePickerController.mediaTypes = [kUTTypeImage как строка, kUTTypeMovie, как строка] настоящего (imagePickerController, анимированные: правда, завершение: ноль)} функ imagePickerController (_ подборщика: UIImagePickerController, didFinishPickingMediaWithInfo информация: [String: Любой]) {// если пусть videoUrl = Информация [UIImagePickerControllerMediaURL], как? URL {// // мы выбрали видео // handleVideoSelectedForUrl (videoUrl) //} Else {// // мы выбрали изображение handleImageSelectedForInfo (информация, как [String: AnyObject]) //} отклонять (анимированный: правда, завершение: ноль)} fileprivate функ handleImageSelectedForInfo (_ информация: [String: AnyObject]) {вар selectedImageFromPicker: UIImage? если позволить editedImage = данные [ "UIImagePickerControllerEditedImage"] как? UIImage {selectedImageFromPicker = editedImage} еще если позволить originalImage = информация [ "UIImagePickerControllerOriginalImage"], как? UIImage {selectedImageFromPicker = originalImage}, если позволить selectedImage = selectedImageFromPicker {HelperService.uploadMessagePictureToDatabase (selectedImage, завершение: {(ImageUrl) в self.sendMessageWithImageUrl (ImageUrl, изображение: selectedImage)})}} переопределение вар inputAccessoryView: UIView? {Получить {вернуться inputContainerView}} переопределение уага canBecomeFirstResponder: IndexPath) -> UICollectionViewCell {пусть клетка = collectionView.dequeueReusableCell (withReuseIdentifier: CellID для: indexPath), как! ChatMessageCell cell.chatLogController = само сообщение пусть = сообщения [indexPath.item] cell.textView.text = message.text setupCell (клетка, сообщение: сообщение) // позволяет изменять ширину bubbleView как-то ??? // cell.bubbleWidthAnchor? .Constant = estimateFrameForText (message.text!). Ширина + 25, если пусть текст = message.text {// текстовое сообщение cell.bubbleWidthAnchor? .Constant = estimateFrameForText (текст) .width + 25 клеток. textView.isHidden = ложь} еще если message.imageUrl! = ноль {// падение здесь, если его сообщение об изображении cell.bubbleWidthAnchor? .constant = 200 cell.textView. 1000) позволяют параметры = NSStringDrawingOptions.usesFontLeading.union (.usesLineFragmentOrigin) вернуть NSString (строка: текст) .boundingRect (с: размер, параметры: параметры, атрибуты: [NSAttributedStringKey.font: UIFont.systemFont (ofSize: 15, вес:. среда)], контекст: ноль)} вар containerViewBottomAnchor: NSLayoutConstraint? функ handleSend () {self.inputContainerView.sendButton.isEnabled = ложь Пусть свойства = [ "текст": inputContainerView.inputTextField.text] sendMessageWithPropertiesFIR (свойства, [String: AnyObject])} fileprivate функ sendMessageWithImageUrl (_ ImageUrl: String, изображение : UIImage) {пусть свойства: [Строка: AnyObject] = [ "ImageUrl": ImageUrl, как AnyObject, "ImageWidth": image.size.width как AnyObject, "ImageHeight": image.size. высота в AnyObject] sendMessageWithPropertiesFIR (свойства)} функ sendMessageWithPropertiesFIR (_ свойства: [String: AnyObject]) {печать (свойства [ "текст"]) вар MessageText = "", если свойства [ "текст"] = ноль {MessageText = свойства! [ "текст"], как! Строка} еще {MessageText = "А envoyé ипе фото"} Api.Message.sendMessageWithProperties (toId: пользователь .id !, свойства: свойства) {Api.Message.isUserMuted (идентификатор пользователя: self.user .id !, завершение: {(isMuted), если isMuted {Api.UserToken.observeUserToken (withUser:! self.user .id !, завершение: {(маркер), если пусть маркер = маркер {Api.User.observeCurrentUser (завершение: {(пользователь) в Апи. Notification.sendNotifPush ( "! \ (User.username): \ (MessageText)" маркер: маркер, сообщение)})}})}}) self.emptyTextField ()}} функ textFieldShouldReturn (_ TextField: UITextField) -> Bool {handleSend () возвращает TRUE} уага startingFrame: CGRect? вар blackBackgroundView: UIView? вар startingImageView: UIImageView? // мой пользовательский масштабирование логики функ performZoomInForStartingImageView (_ startingImageView: UIImageView)? {Self.startingImageView = startingImageView self.startingImageView .isHidden = истина self.inputContainerView.inputTextField.resignFirstResponder () startingFrame = startingImageView.superview .convert (startingImageView.frame, чтобы: inputTextField.resignFirstResponder () self.blackBackgroundView? & alpha; = 1 self.inputContainerView.alpha = 0 // математика? // h2 / w1 = h1 / h2 w1 // = h1 / w1 * w1 пусть высота = self.startingFrame .height / self.startingFrame .width * keyWindow.frame.width zoomingImageView.frame = CGRect (х:! 0, у: 0, ширина: keyWindow.frame.width, высота: высота) zoomingImageView.center = keyWindow.center}, завершение: {(завершено) в // ничего не делать})}} Func handleZoomOut (_ tapGesture: UITapGestureRecognizer) {если пусть zoomOutImageView = tapGesture.view {// нужно анимировать обратно к контроллеру zoomOutImageView.layer.cornerRadius = 8 zoomOutImageView. clipsToBounds = истина UIView.animate (withDuration: 0.5, задержка: 0, usingSpringWithDamping: 1, initialSpringVelocity: 1, опции: .curveEaseOut, анимации: {self.startingFrame = self.startingImageView .superview .convert ((self.startingImageView?? .frame) !, чтобы: ноль) zoomOutImageView.frame = self.startingFrame self.blackBackgroundView & alpha; = 0 self.inputContainerView.alpha = 1}, завершение:!? {(завершено) в zoomOutImageView.removeFromSuperview () self.startingImageView? .isHidden = ложь})}}} The View: импорт класс UIKit ChatInputContainerView: UIView, UITextFieldDelegate {слабый вар chatLogController: ChatLogController? {{DidSet sendButton.addTarget (chatLogController, действие: #selector (ChatLogController. "PlaneChat"), для: .Normal) sendButton.backgroundColor = UIColor.white sendButton.tintColor = UIColor (красный: 82/255, зеленый: 121/255, синий: 179/255, альфа: 1) sendButton.layer.cornerRadius = 20 = sendButton.clipsToBounds истинного sendButton.translatesAutoresizingMaskIntoConstraints = ложь // что handleSend? addSubview (послать Отправить) addSubview (self.inputTextField) // х, у, ш, ч // enlever апре self.inputTextField.leftAnchor.constraint (equalTo: uploadImageView.rightAnchor, постоянное: 12) .isActive = истина // самостоятельно. inputTextField.leftAnchor.constraint (equalTo: leftAnchor, константа: 8) .isActive = истина //self.inputTextField.centerYAnchor.constraint(equalTo: centerYAnchor) .isActive = истина self.inputTextField.topAnchor.constraint (equalTo: topAnchor, константа: 4). IsEnabled = ложь self.sendButton.alpha = 0,8} функ emptyTextField () {self.inputTextField.text = "" disableButton ()} // FUNC textViewDidChange (_ TextView: UITextView) {// печать (TextView) // если TextView = = self.inputContainerView.inputTextField {// если (self.inputContainerView.inputTextField.text? .isEmpty)! {// disableButton () //} еще {// // sendButton.setTitleColor (typoGreyButton для: .Normal) // self.inputContainerView.sendButton.isEnabled = истина //} //} // //} требуется инициализация ? (кодировщик aDecoder: NSCoder) {FatalError ( "INIT (кодировщик :) не был реализован")}} disableButton ()} // FUNC textViewDidChange (_ TextView: UITextView) {// печатаем (TextView) // если TextView == self.inputContainerView.inputTextField {// если (self.inputContainerView.inputTextField.text .isEmpty?)! {// disableButton () //} еще {// // sendButton.setTitleColor (typoGreyButton для: .Normal) // self.inputContainerView.sendButton.isEnabled = истина //} //} // //} требуется инициализация ? (кодировщик aDecoder: NSCoder) {FatalError ( "INIT (кодировщик :) не был реализован")}} disableButton ()} // FUNC textViewDidChange (_ TextView: UITextView) {// печатаем (TextView) // если TextView == self.inputContainerView.inputTextField {// если (self.inputContainerView.inputTextField.text .isEmpty?)! {// disableButton () //} еще {// // sendButton.setTitleColor (typoGreyButton для: .Normal) // self.inputContainerView.sendButton.isEnabled = истина //} //} // //} требуется инициализация ? (кодировщик aDecoder: NSCoder) {FatalError ( "INIT (кодировщик :) не был реализован")}}
KevinB
1

голосов
1

ответ
50

Просмотры

Это плохая идея, чтобы создать модель, которая имеет дело с царствами дб и модель для использования

Я только начал использовать область в моем КСНА быстр проекте, и заметил несколько вопросов, связанных с доступом области объектов из разных потоков. Поэтому я решил, для каждой модели, адъюнкт модели царств. Например, для моей модели пользователя, у меня будет UserRealm модель, которая имеет те же атрибуты. Тем не менее, я использую UserRealm для чтения / записи в БД и пользователя, чтобы использовать через из App. Это плохая идея? Влияет ли это на эффективность области?
MrGreen
1

голосов
0

ответ
49

Просмотры

Изменить вид в многозадачности Switcher не работает на iPhone6

Я должен изменить снимки и многозадачный вид только некоторые представления, которые содержат конфиденциальные данные. Для этого я использую следующий код, который вызывается, когда NSNotification.Name.UIApplicationWillResignActive срабатывает. Моя проблема заключается в том, что на iPhone 6 (11.1.1) не работает, когда он идет к многозадачности переключателя (приложение переключателе). (Я пробовал на iPhone 6s 11.1.1 и он работал отлично), а также в более сложных устройствах. В iPhone 5 работает 9 из 10 раз. Но в iPhone 6 он никогда не работает. (Когда я принести App на передний план снова показывает LaunchScreenViewController всего несколько, а затем она исчезает). Я проверил, что код внутри закрытия завершения вызывается до изменения состояния в неактивное состояние, но оно не представляет LaunchView. Я не хочу, чтобы вызвать приложение делегата или окна из ViewController, Я также пытался получить ViewController загружены в статическом вар и просто представить его, и он не работает ни. Кроме того, я пытался добавить подвид к навигации контроллера, но он не работает ни в iPhone 6. (я пробовал с 2 айфонов 6). Когда приложение переходит на задний план он прекрасно работает, и если я нахожусь в приложении переключателе (запуск View не отображается, но если я снова открыть другое приложение, а затем я снова иду к переключателю App, теперь приложение показывает Launch View . пусть overlayVC = LaunchScreenViewController (showsSpinner ложь) self.navigationController .present (overlayVC, анимированный: ложное, завершение: {? [слабая сам] самолечение .setObserverApplicationIsActive ()})? Были ли дело вы с этой проблемой, я также пытался добавить эффект размытия, но он не работает Edit.: Если запустить видео на YouTube и изменения в многозадачной переключателе, видео продолжает играть. Так что я не знаю, почему на iPhone 6 не представит новую ViewController.
1

голосов
1

ответ
414

Просмотры

URLencoding в скор

Пожалуйста, помогите мне сделать то же самое на Swift 3 локон -X POST -d MD = '44586989' -d TermUrl = 'https: //proil.moscow/' --data-UrlEncode 'PaReq = + / eyJNZXJjaGFudE5hbWUiOm51bGwsIkZpcnN0U2l4IjoiNDI3NjM4IiwiTGFzdEZvdXIiOiIxMTQ1IiwiQW1vdW50IjoxMDM0LjAwLCJDdXJyZW5jeUNvZGUiOiJSVUIiLCJEYXRlIjoiMjAxOC0wMy0yNlQwMDowMDowMCswMzowMCIsIkN1c3RvbWVyTmFtZSI6bnVsbCwiQ3VsdHVyZU5hbWUiOiJydS1SVSJ9' https: // demo.cloudpayments.ru/acs Я стараюсь это: запрос вар = URLRequest (URL: URL (строка: acsUrlString)) request.httpMethod = "POST" пусть сессия = URLSession.shared request.setValue ( "применение / х-www- форма-urlencoded», forHTTPHeaderField: "Content-Type") пусть d = строка ( "paReq =" + pareq + "& MD =" + String (Int (TransactionID)) + "& TermUrl = HTTPS: //proil.moscow") .data (с использованием: String.Encoding.ascii, allowLossyConversion: ложь) request.httpBody = d, где d без кодирующие = PaReq = + / eyJNZXJjaGFudE5hbWUiOm51bGwsIkZpcnN0U2l4IjoiNDI3NjM4IiwiTGFzdEZvdXIiOiIxMTQ1IiwiQW1vdW50IjoxMDM0LjAwLCJDdXJyZW5jeUNvZGUiOiJSVUIiLCJEYXRlIjoiMjAxOC0wMy0yNlQwMDowMDowMCswMzowMCIsIkN1c3RvbWVyTmFtZSI6bnVsbCwiQ3VsdHVyZU5hbWUiOiJydS1SVSJ9 & MD = 44586989 & TermUrl = https: //proil.moscow Так что этот код дает мне тот же результат, как результат локон -X POST -d MD = '44586989' -d TermUrl = 'https: //proil.moscow/' -d PaReq = '+ / eyJNZXJjaGFudE5hbWUiOm51bGwsIkZpcnN0U2l4IjoiNDI3NjM4IiwiTGFzdEZvdXIiOiIxMTQ1IiwiQW1vdW50IjoxMDM0LjAwLCJDdXJyZW5jeUNvZGUiOiJSVUIiLCJEYXRlIjoiMjAxOC0wMy0yNlQwMDowMDowMCswMzowMCIsIkN1c3RvbWVyTmFtZSI6bnVsbCwiQ3VsdHVyZU5hbWUiOiJydS1SVSJ9' https://demo.cloudpayments.ru/acs я получаю этот ответ от сервера cloudpayments: "Проверьте символ «+» в параметре PaReq. ",
Mi Ka
1

голосов
1

ответ
67

Просмотры

How to change the postion of the title after changing the height of Navigation Bar in Xcode

Я хочу, чтобы изменить положение заголовка изображения навигационной панели после изменения высоты навигации, но она не работает. Я новичок, пожалуйста, помогите мне, спасибо вам, ребята! переопределить функ viewDidAppear (_ анимированный: Bool) {NavigationBarHeight ()} Func NavigationBarHeight () {для подвида в (self.navigationController .navigationBar.subviews?)! {Если NSStringFromClass (subview.classForCoder) .Contains ( "BarBackground") {вар subViewFrame: CGRect = subview.frame subViewFrame.size.height = 75 subview.frame = subViewFrame}}} функ addNavBarImage () {пусть NavController = navigationController пусть изображение = UIImage (назван: "文字 логотип") пусть ImageView = UIImageView (изображение: изображение) пусть bannerWidth = NavController .navigationBar.frame.size?. ширина пусть bannerHeight = NavController? .navigationBar.frame.size.height пусть bannerX = bannerWidth! / 2 - изображение .size.width / 2 пусть bannerY = bannerHeight! / 2 - изображение .size.height / 2 imageView.frame = CGRect (х: bannerX, у: bannerY, ширина: bannerWidth / 2, высота: bannerHeight / 2!) ImageView.contentMode = .scaleAspectFit navigationItem.titleView = ImageView! }
Wei Su
1

голосов
2

ответ
42

Просмотры

Как правильно ссылаться / извлечь временный файл, созданный в AppData для загрузки файлов на сервер?

Таким образом, приложение, которое я делаю создает файл под названием «файл_журнал», и я пытаюсь отправить файл через Alamofire загрузить на сервер. Путь к файлу напечатан в журнале консоли является /var/mobile/Containers/Data/Application/3BE13D78-3BF0-4880-A79A-27B488ED9EFE/Documents/logfile.txt и путь к файлу можно использовать, чтобы вручную открыть журнал, созданный в .xcappdata является /AppData/Documents/logfile.txt Чтобы получить доступ к нему, я использую пусть fileURL = Bundle.main.url (forResource: «», withExtension: «.txt»), где между ними двойными кавычками для «forResource», я «пробовали как файловые пути я перечисленные в предыдущем абзаце, а также только имя файла, но я получаю ноль значения для файла найденного либо. Файл не распознается, чтобы быть там, предположительно потому, что путь к файлу I» м при использовании неправильно, как Alamofire возвращает ноль при попытке найти отправить файл. Любой знает, прямой путь к файлу, я должен использовать, чтобы быть в состоянии захватить мой файл, так как два других же, мол, не работает? Спасибо!
Sammy Eang
1

голосов
1

ответ
65

Просмотры

uiviewcontroller embeded in uinavigation controller starts under parent view's navigation bar in iphone x

Я использую следующий код, чтобы добавить контроллер представления ребенка в другой ViewController. CGRect rightViewFrame = CGRectMake (0, 0, self.view.bounds.size.width, self.view.bounds.size.height-50); [PWorksetController viewDidAppear: ДА]; UIStoryboard * pModelViewStoryboard = [UIStoryboard storyboardWithName: @ "ModelViewMobile" пачка: ноль]; gpUserDataManager.pModelViewController = (ModelViewController *) [pModelViewStoryboard instantiateViewControllerWithIdentifier: @ "VIEW_DETAIL"]; // pModelViewController.selectedModel = pModelListInfo; gpUserDataManager.pModelViewController.DiscussionViewListingDelegate = самостоятельно; // отсутствует модель gpUserDataManager.pModelViewController.syncAllButton = self.syncAllButton; // отсутствует модель // [само UpdateView]; gpUserDataManager.pModelViewController. modelViewDelegate = самостоятельно; gpUserDataManager.pModelViewController.navigationController.navigationItem.hidesBackButton = TRUE; self.pRightNavController = [[UINavigationController Alloc] initWithRootViewController: gpUserDataManager.pModelViewController]; [Self.pRightNavController.view setFrame: rightViewFrame]; self.pRightNavController.view.layer.cornerRadius = 5,0; self.pRightNavController.view.clipsToBounds = ДА; self.pRightNavController.navigationBar.translucent = NO; [Self.view addSubview: self.pRightNavController.view]; [Самостоятельного addChildViewController: self.pRightNavController]; Навигационная Childviewcontroller является не начиная с надлежащего position.It поставляется под навигацией bar.Please прилагается скриншот-1.Это происходит только при запуске приложения на iPhone x.It выглядит правильно и в других устройствах. Как решить эту проблему? Обновление: Когда я снимите под верхними и нижними стержнями баров сдвигает UIViewController below.Please см второго скриншота-2.
Bhoomi
1

голосов
1

ответ
119

Просмотры

Создание actionsheet похожи на приложения Контакты

В одном из моего приложения, я хочу создать actionsheet аналогичного по умолчанию контактов приложения. Я немного запутался о том, как создать этот экран, он по умолчанию actionsheet обеспечивается прошивкой или это любой пользовательский экран. Если по умолчанию actionsheet, то как реализовать многострочный действие, как на следующем экране
Mehul Thakkar
1

голосов
0

ответ
273

Просмотры

Можно ли скрыть индикатор дома на iPhone X во время водопроводных / игр?

Я пишу игру, в которой пользователь нажимает на экран. Шкала индикатора дома появляется и исчезает постоянно в кранах пользователя. Можно ли изменить это поведение так, чтобы индикатор дома остается скрытым до тех пор, пока используется какой-то особый жест? Я знаю, что это возможно для пользователя, чтобы установить это в доступности, но я ищу кодированное решение.
Matt H
1

голосов
0

ответ
51

Просмотры

Встряхнуть, чтобы отменить выпуск Ios Safari

Я собираю WebAPP игру, используя Ios сафари, и вы начинаете, заполнив форму в vuejs, но после этого, форма заменяется на новый экран vuejs, когда игра началась. Во время игры, однако, если люди качают телефоны, это побуждает их отменить / повторить их типизации, которые не были бы даже возможно, поскольку не существует даже форма на странице больше. Любая идея о том, как остановить / удалить это поведение? Я попытался нажав на слушателя событий «devicemotion», но это ничего не делать Вот пример devicemotion сценария я пробовал window.addEventListener ( «devicemotion», функция (е) {e.preventDefault ();} );
Cono Onorato
1

голосов
1

ответ
1k

Просмотры

Индикатор активности анимации не работает - Swift

У меня есть эта проблема, когда я загружаю экран я начинаю индикатор активности и вызвать функцию, чтобы получить данные. Сначала активность была показана, но никогда не начинается тогда я побежал каждый вызов (начать деятельность и получить данные) в другом потоке. Анимация работала, но только один раз, когда я пытаюсь загрузить экран на другой раз он застрял снова до тех пор, пока данные загружаются. Это viewDidLoad: переопределение FUNC viewDidLoad () {super.viewDidLoad () // Индикатор = UIActivityIndicatorView (кадр: CGRect (х: 0, у 0, ширина: 50, высота: 50)) indicator.transform = CGAffineTransform ( Scalex: 1,5, у: 1,5) indicator.color = commons.getButtonColor () indicator.center = self.view.center indicator.hidesWhenStopped = истинный self.view.addSubview (индикатор) DispatchQueue.main.async {печать ( "Мы закончили тот."
yasser h
1

голосов
0

ответ
314

Просмотры

Ионные Cordova родной плагин не работает в IOS

Я работаю над приложением, которое Ионным используется в Android и IOS оба. В моем приложении я использую печать, обмен и функциональность сканера штрих кодов, используя этот плагин Cordova-плагин-х-socialsharing 5.4.0 для «SocialSharing» Cordova-плагин-принтер 0.7.3 для «Принтер» Cordova-плагин-barcodescanner 0.7.4 для «BarcodeScanner» это плагин работает отлично с Android, но когда я проверить его с IOS сталкиваюсь такая же проблема со всеми плагинами, которые следующие: когда я нажимаю кнопку печати в iPhone ничего не происходит, но при нажатии на кнопку домой и снова открыть приложение, то печать всплывающее окно покажет автоматически. Эта же проблема, я также сталкиваются с другими плагинами. Я думаю, что это фон функциональность проблема с IOS. Я от андроида фона, так что я не в состоянии понять, почему это происходит с IOS, и я застрял с ним. Вот мой код часть: Для печати: печать () {this.printer.isAvailable (), то ((OnSuccess => {}), OnError => {});. this.printer.check (), а затем ((OnSuccess => {}), OnError => {}). пусть опции: PrintOptions = {имя: 'MyDocument', дуплекс: правда, пейзаж: правда, оттенки серого: истинный}; пусть PrintData = this.printContent (); SetTimeout (() => {this.platform.ready (). Затем (успех => {this.printer.print (PrintData) .then (функция () {}, функция () {Alert ( "Ошибка при печати!" );});}, ошибка => {Alert ( 'Платформа Not Ready' + ошибка);});}, 100); } Для совместного использования savebase64AsPDF (путь_к_папке, имя файла, содержание, CONTENTTYPE) {// Преобразовать строку base64 в Blob вар DataBlob = this.b64toBlob (содержание, CONTENTTYPE, 12); console.log ( "Начало записи файла: 3"); Окно [ 'resolveLocalFileSystemURL'] (путь_к_папка, функция (реж) {console.log ( "Доступ к каталогу предоставлен успешно"); this.file = dir.getFile (имя файла, {создать: истинно}, функцию (файл) {консоль .log ( "создан файл успешно."); file.createWriter (функция (FileWriter) {console.log ( "Запись содержимого в файл"); fileWriter.write (DataBlob);}, функция () {Alert ( "Невозможно сохранить файл в пути «+ путь_к_папке);});});}); //this.downloadFile(DataBlob); this.socialSharing.share ( "", "" + this.record.orderNo + "Продажа заказа", путь_к_папке + "/" + имя файла, нуль) .then (() => {}). задвижка ((ошибка) => { предупреждение (ошибка);}); } Для сканирования cordova.plugins.barcodeScanner.scan (функция (результат) {Alert (»
Rahul dev
1

голосов
1

ответ
165

Просмотры

скрыть / показать DIV от выбора опции КСН - не работает

Показать / скрыть DIV на основе выбора опции хорошо работает на рабочем столе, но не на Ios устройств. Я уверен, что есть лучший способ структурировать JQuery для этого требования. КСНА родные выпадающие вы можете отметить все выбор опций, а также должны выбрать и отменить выбор для того, чтобы увидеть следующий вариант. Мне нужно, чтобы иметь возможность выбрать один из вариантов в то время. $ (Функция () {$ ( '#storeselector') .on ( 'вход propertychange', функция) {$ ( '.Складировать скрыть') .hide ((); $ ( '#' + $ (это). Val ()) .show ();});}); .Складировать правый {поплавок: право; } .I-магазин {размер шрифта: 3rem; семейство шрифтов: «Avenir Next», без засечек; стиль шрифта: нормальный; начертание шрифта: 600; цвет: наследуют; текст-рендеринг: optimizeLegibility; высота строки: 1,2; Дисплей: блок; Маржа: авто; выравнивания текста: справа; обивка-направо: 4%; } .Складировать-IMG {макс-ширина: 1150px; ширина: 100%; Маржа: авто; Дисплей: блок; } .Складировать скрыть {дисплей: нет; } .Складировать-блок {ширина: 100%; } Цокольный Первый этаж Уровень 1 LG G 1
user3767554
1

голосов
2

ответ
96

Просмотры

Как справиться с аварией CoreData в ИО Swift?

Мне нужно обрабатывать аварии ядра данных. Мой код был разбился на managedObjectContext.save (). Но поймать блок не поймать какие-либо исключений. Чтобы избежать аварий, как я могу написать свой улов блок лучше Вот мой код. делать {попробуйте managedObjectContext.save ()} поймать пусть ошибку как NSError {Print.print ( "Ошибка сохранения хранилища данных: \ (ошибка)")}
gadiraju rekha
1

голосов
1

ответ
42

Просмотры

Реализация localisable строки в IOS с гиперссылкой

Я строю приложение, и хотел бы создать эту функцию. «Используя наши услуги, вы соглашаетесь с нашими условиями предоставления услуг» `Эта метка / текст также должен быть localisable на японском и немецком языках, и когда пользователь нажимает на Условия предоставления услуг, приложение должно запустить WebView на внешний веб-сайт. Я попытался UILabel и ActiveLabel, но они, кажется, не быть в состоянии локализовать / переводить. Кто-нибудь есть какие-либо идеи или предложения? Спасибо и оценили.
1

голосов
1

ответ
63

Просмотры

UIView панорамирования жест вдоль оси Y

У меня есть UIView, что я могу перетащить вдоль оси Y, который защелкивается в 1 из 2 позиций. Проблема в том, что я должен перетащить его на определенной точке по оси Y для того, чтобы защелкнулись. Это чувствует себя неуклюжим, когда вы пытаетесь быстро красть, но не делают это мимо этой конкретной оси Y и защелками обратно в исходное положение. Моя желанная цель заключается в его защелкивании 1 из 2 позиций в зависимости от направления пользователя был провести палец, когда он выпустил UIView. @objc функ panGesture (распознаватель: UIPanGestureRecognizer) {пусть окно = UIApplication.shared.keyWindow пусть перевод = recognizer.translation (в: я) пусть CurrentY = self.frame.minY пусть частично = - (окно .frame.height?)! 194 пусть halfWayPoint = ((окно .frame.height) / 2?!) -40 self.frame = CGRect (х: 0, у: CurrentY + translation.y, ширина: self.frame.width, высота: self.frame.height) recognizer.setTranslation (CGPoint.zero в: я) переключатель recognizer.state {случай .changed: // Предотвращение прокрутки вверх мимо у: 0, если CurrentY 80 && CurrentY <halfWayPoint {UIView.animate ( withDuration: 0,62, задержка: 0.0, usingSpringWithDamping: 0,62, initialSpringVelocity: 0.5, опции: .curveEaseInOut, анимации:! {recognizer.view .frame = CGRect (х: 0, у: 80, ширина: self.frame.width, высота : self.frame.height)}, завершение: {(истина) в self.isExpanded = истина})} // Привязка обратно к частичной (у) (исходное положение), если CurrentY> || частично CurrentY <&& CurrentY частично> halfWayPoint {UIView.animate (withDuration: 0,62, задержка: 0. 0, usingSpringWithDamping: 0,62, initialSpringVelocity: 0.5, опции: .curveEaseInOut, анимации: {recognizer.view .frame = CGRect (х: 0, у: частично, ширина: self.frame.width, высота: self.frame.height )}, завершение: {(истина) в self.isExpanded = ложь})} по умолчанию: печать ( «Default»)} Как вы можете видеть halfWayPoint это точка, в которой вид должен быть выше или ниже, чтобы определить положение она зафиксировалась в. Это неэффективно, и я хотел бы сделать это в зависимости от направления (вверх или вниз) пользователь перетаскивает вид. высота: self.frame.height)}, завершение: {(истина) в self.isExpanded = ложь})} по умолчанию: печать ( «Default»)} Как вы можете видеть halfWayPoint это точка, в которой представление должно быть более или под для того, чтобы определить позицию, которую она защелкивается в. Это неэффективно, и я хотел бы сделать это в зависимости от направления (вверх или вниз) пользователь перетаскивает вид. высота: self.frame.height)}, завершение: {(истина) в self.isExpanded = ложь})} по умолчанию: печать ( «Default»)} Как вы можете видеть halfWayPoint это точка, в которой представление должно быть более или под для того, чтобы определить позицию, которую она защелкивается в. Это неэффективно, и я хотел бы сделать это в зависимости от направления (вверх или вниз) пользователь перетаскивает вид.
Niall Kiddle

Просмотр дополнительных вопросов