AdMobをSwift4プロジェクトに導入すべくFirebaseをpodsで取り込んだCircularSpinner.swiftで発生したエラー対処法(1)
受付中
回答 0
投稿
- 評価
- クリップ 1
- VIEW 993
プロジェクトおよび問題の概要
Teratailさんに6件も質問しxAxisさんはじめ皆さんに教えて頂いたiOSアプリ「音声入力アシスト」は無事リリースされました。
バージョンアップしてAdMovをインストールすべく作業中のところ下記の手順でFirebaseはインストールできたのですがXcodeに取り込まれたCircularSpinner.swiftにエラーが発生していて先に進みません。
ターミナル上プロジェクトVoiceAsisst01 を選定
pod init でPodsをXcodeのVoiceAsisst01に取り込み
Finder上でPodsファイルに下記を書き込み
pod ‘SwiftyStoreKit’
pod 'SDWebImage', '~>3.8'
pod 'CircularSpinner'
pod 'Firebase/Core'
pod 'Firebase/AdMob’
ターミナル上pod installを実施下記のファイルをインストール
Analyzing dependencies
Downloading dependencies
Installing CircularSpinner (1.2.0)
Installing Firebase (4.7.0)
Installing FirebaseAnalytics (4.0.5)
Installing FirebaseCore (4.0.12)
Installing FirebaseInstanceID (2.0.7)
Installing Google-Mobile-Ads-SDK (7.26.0)
Installing GoogleToolboxForMac (2.1.3)
Installing SDWebImage (3.8.2)
Installing SwiftyStoreKit (0.11.0)
Installing nanopb (0.3.8)
Generating Pods project
Integrating client project
CircularSpinner.swiftに発生したエラー
VoiceAsisst01.xcworkspaceでXcodeを開けたところ
CircularSpinner.swiftに3件エラーが発生していました。
111 (2つは同じ内容でした)
'init(colorLiteralRed:green:blue:alpha:)' is unavailable: This initializer is only meant to be used by color literals
222
Cannot call value of non-function type 'CircularSpinnerType'
お願い
エラーの英文で検索をした和文・英文のサイト情報を参考にしてコード修正をいくつも試しましたが解決に至っていません。
下記をご参照の上解決策をご教示ください。
CircularSpinner.swiftコード
// CircularSpinnerExample
//
// Created by Matteo Tagliafico on 15/09/16.
// Copyright © 2016 Matteo Tagliafico. All rights reserved.
//
import UIKit
@objc public protocol CircularSpinnerDelegate: NSObjectProtocol {
@objc optional func circularSpinnerTitleForValue(_ value: Float) -> NSAttributedString
}
@objc public enum CircularSpinnerType: Int {
case determinate
case indeterminate
}
open class CircularSpinner: UIView {
// MARK: - singleton
static open let sharedInstance = CircularSpinner(frame: CGRect.zero)
// MARK: - outlets
@IBOutlet fileprivate weak var circleView: UIView!
@IBOutlet fileprivate weak var circleViewWidth: NSLayoutConstraint! {
didSet {
layoutIfNeeded()
}
}
@IBOutlet fileprivate weak var titleLabel: UILabel!
@IBOutlet fileprivate weak var dismissButton: UIButton!
// MARK: - properties
open weak var delegate: CircularSpinnerDelegate?
fileprivate var mainView: UIView!
fileprivate let nibName = "CircularSpinner"
fileprivate static weak var customSuperview: UIView? = nil
fileprivate var backgroundCircleLayer = CAShapeLayer()
fileprivate var progressCircleLayer = CAShapeLayer()
var indeterminateDuration: Double = 1.5
fileprivate var startAngle: CGFloat {
//return CGFloat(M_PI_2)
return CGFloat.pi * 2
}
////字数制限により中略
open static var trackBgColor = UIColor(colorLiteralRed: 238.0/255, green: 238.0/255, blue: 238.0/255, alpha: 1)
//open static var trackBgColor = UIColor(colorLiteralRed: 238.0, green: 238.0, blue: 238.0, alpha: 1)
// open static var trackBgColor = UIColor{
// return UIColor(red: CGFloat(r) / 255.0, green: CGFloat(g) / 255.0, blue: CGFloat(b) / 255.0, alpha: alpha)
// }
private var bgColor = trackBgColor {
didSet {
appearanceBackgroundLayer()
}
}
open static var trackPgColor = UIColor(colorLiteralRed: 47.0/255, green: 177.0/255, blue: 254.0/255, alpha: 1)
private var pgColor = trackPgColor {
didSet {
appearanceProgressLayer()
}
}
fileprivate func loadViewFromNib() -> UIView {
let bundle = Bundle(for: type (of: self))
//let bundle = Bundle(for: self)
let nib = UINib(nibName: nibName, bundle: bundle)
let view = nib.instantiate(withOwner: self, options: nil).first as! UIView
return view
}
エラー発生箇所
ご参考事項
環境は下記のとおりです。
MacBook Pro (15-inch, 2016)
High Sierra OS10.13.2
Xcode Version 9.2 (9C40b) Swift4
気になることは下記のスクリーンショットのごとくXcodeのファイルが赤くなっています。
またPodfileに?がついていています。開けると CircularSpinner.swiftと同じ内容で、同じカ所に同じエラーがでていました。
「音声入力アシスト」のアップストアURLは
https://itunes.apple.com/jp/app/id1324919578?mt=8
です。
よろしくお願いします。
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 過去に投稿した質問と同じ内容の質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
まだ回答がついていません
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 88.36%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる