[解決済み] Swift で CGFloat を切り上げる
2023-03-13 13:53:13
質問
どのように私はSwiftでCGFloatを丸めることができますか?
私は試してみました
ceil(CDouble(myCGFloat))
を試しましたが、それはiPad Air & iPhone 5Sでしか動作しません。
別のシミュレートされたデバイスで実行すると、次のようなエラーが発生します。
'NSNumber' is not a subtype of 'CGFloat'
どのように解決すればよいですか?
更新
: Apple は現在、以下のような一般的な関数の CGFloat 固有のバージョンを定義しています。
ceil
:
func ceil(x: CGFloat) -> CGFloat
...特に32/64ビットの違いに対処するために。もし、単に
ceil
をCGFloatの引数で使用すると、全てのアーキテクチャで動作するようになります。
私のオリジナルの回答です。
これはかなりひどいと思うのですが、誰か良い方法を思いつきますか?
#if
ではうまくいかないようです。
CGFLOAT_IS_DOUBLE
ビルドコンフィギュレーションに限定されると思います。
条件付きコンパイルのドキュメントを見る限りでは
.
var x = CGFloat(0.5)
#if arch(x86_64) || arch(arm64)
var test = ceil(x)
#else
var test = ceilf(x)
#endif
関連
-
[解決済み] Javaで数値を小数点以下n桁に丸める方法
-
[解決済み] Swiftで#pragmaマーク?
-
[解決済み] Swift Betaのパフォーマンス:配列のソート
-
[解決済み] Swiftの@selector()?
-
[解決済み】String.substringWithRangeはどのように使うのですか?(または、SwiftでRangeはどのように動作しますか?)
-
[解決済み] SwiftUI。TextFieldをファーストレスポンダーにするには?
-
[解決済み] Swiftでbutton.addTargetアクションにパラメータを付ける
-
[解決済み] プロパティの型が内部型を使用しているため、publicを宣言することができない
-
[解決済み] 計算された読み取り専用プロパティとSwiftの関数との比較
-
[解決済み] swiftでデータを16進文字列に変換する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Swiftで1つのビューコントローラの向きを縦向きのみに固定する方法
-
[解決済み] Swiftダブルからストリング
-
[解決済み] Swiftのリバースレンジ
-
[解決済み] Swiftで複数のカスタムセルを持つUITableview
-
[解決済み] Swift: インデックスで文字列配列を置換する
-
[解決済み] swiftにおける "precondition "と "assert "の違いとは?
-
[解決済み] 小数点以下2桁に切り上げ
-
[解決済み] Swiftのif letと論理AND演算子&&の使い分け
-
[解決済み] swiftでオプションのクロージャを作るにはどうしたらいいですか?
-
[解決済み] Swiftでクラスメソッド/プロパティを作成するには?