-7
A
答えて
9
女性のシンボルを描画する例を示します。 まず、それを描画するUIBezierPath
を使用して、レイヤを行います。その後
import UIKit
class FemaleLayer: CAShapeLayer {
override var frame: CGRect {
didSet{
self.draw()
}
}
private func draw() {
self.lineWidth = 20.0
self.fillColor = UIColor.clear.cgColor
self.strokeColor = UIColor.black.cgColor
let path = UIBezierPath()
let sideLength = fmin(self.frame.width, self.frame.height)
let circlesRadius = (sideLength/2.0 - self.lineWidth) * 0.6
let circleCenterY = self.bounds.midY * 0.8
path.addArc(withCenter: CGPoint(x:self.bounds.midX, y:circleCenterY), radius: circlesRadius, startAngle: 0.0, endAngle: 2 * CGFloat.pi, clockwise: true)
let circleBottomY = circleCenterY + circlesRadius
path.move(to: CGPoint(x: self.bounds.midX, y: circleBottomY))
path.addLine(to: CGPoint(x: self.bounds.midX, y: circleBottomY + circlesRadius))
path.move(to: CGPoint(x: self.bounds.midX * 0.6, y: circleBottomY + circlesRadius * 0.5))
path.addLine(to: CGPoint(x: self.bounds.midX * 1.4, y: circleBottomY + circlesRadius * 0.5))
self.path = path.cgPath
}
}
はUIViewのにレイヤーを追加することによって、それを使用する:
let femaleLayer = FemaleLayer()
femaleLayer.frame = self.view.bounds
self.view.layer.addSublayer(femaleLayer)
を
は、男性用:
class MaleLayer: CAShapeLayer {
override var frame: CGRect {
didSet{
self.draw()
}
}
private func draw() {
self.lineWidth = 20.0
self.fillColor = UIColor.clear.cgColor
self.strokeColor = UIColor.black.cgColor
let path = UIBezierPath()
let sideLength = fmin(self.frame.width, self.frame.height)
let circlesRadius = (sideLength/2.0 - self.lineWidth) * 0.6
let circleCenterX = self.bounds.midX * 0.9
let circleCenterY = self.bounds.midY * 1.2
path.addArc(withCenter: CGPoint(x:circleCenterX, y:circleCenterY), radius: circlesRadius, startAngle: 0.0, endAngle: 2 * CGFloat.pi, clockwise: true)
let circleRightTopX = circleCenterX + circlesRadius * 0.686
let circleRightTopY = circleCenterY - circlesRadius * 0.686
let lineLength = circlesRadius * 0.7
path.move(to: CGPoint(x: circleRightTopX, y: circleRightTopY))
path.addLine(to: CGPoint(x: circleRightTopX + lineLength, y: circleRightTopY - lineLength))
path.move(to: CGPoint(x: circleRightTopX, y: circleRightTopY - lineLength))
path.addLine(to: CGPoint(x: circleRightTopX + lineLength + self.lineWidth/2.0, y: circleRightTopY - lineLength))
path.move(to: CGPoint(x: circleRightTopX + lineLength, y: circleRightTopY - lineLength))
path.addLine(to: CGPoint(x: circleRightTopX + lineLength , y: circleRightTopY))
self.path = path.cgPath
}
}
+0
ちょっとマイナーな(?)もの...あなたが提供したコードはおそらく 'FemaleLayer'という名前にしてください:-) –
+0
ハハハ、ばかな間違い!それを示してくれてありがとう!回答が更新されました。 –
関連する問題
- 1. SMLのHofstadter女性と男性シーケンス
- 2. Kinectは男性と女性を区別できますか?
- 3. ユーザテーブルmysqlの平均男性と女性を取得する
- 4. エクセル:男性と女性従業員のカウント数
- 5. 女性の男性のUSBをsamsungタブレットに接続する
- 6. 女性または男性の友達だけを取得
- 7. 列に「男性」と「女性」が含まれています。すべての女性を男性とviceversaに変更したい
- 8. Android TTS男性女性の音声変更
- 9. 一意の男性と女性の数が投票を投稿しました
- 10. word2vecの実装addresing男性/女性と単数/複数の問題
- 11. ナビゲーションで2つのオプション、ラジオの男性または女性を使用
- 12. HTMLのテキストボックスを通して男性/女性を検証する方法は?
- 13. MySQL - 国別にグループ化された男性と女性の数を計算する
- 14. ダンスペアアルゴリズム(男性は1人または複数の女性と踊っている可能性があります)
- 15. 文字列の男性/女性を区別するためのRの正規表現
- 16. foreachループに男性と女性がどれくらいあるかを印刷します
- 17. 商品の注文をしていない男性と女性の合計男性の数を取得します
- 18. ユーザーでログインして確認する方法を男性または女性のMySQLとCodeIgniterの
- 19. オーディオファイルから男性と女性の音声を分割する方法(C++またはjavaで)
- 20. URLに男性があるかどうかを確認して、女性に置き換えてください
- 21. 男性と女性の理想的な体重範囲をどのようにコード化しますか
- 22. 値= 0と「女性」が
- 23. 1つのmysqlクエリで男性/女性/すべての平均投票評価を取得
- 24. 男性または女性をランダムに決定するためのJavaのヘルプが必要
- 25. Android TTS男性の声
- 26. 男性/女性をデータフレーム列から分離して95%信頼区間を見つける方法は?
- 27. 設定方法バインド可能なチェックボックスの値が自動的に男性/女性に変更されました
- 28. 列内の男性と女性の数を合計します。おそらくDBの列を検索しようとすると、惑星
- 29. 女性の声でGoogle ChromeのspeechSynthesis
- 30. 注釈を使用してggplot2に太字の女性記号を追加してください
このトピックでは、彼または彼女は、正確な問題は、これらの図面を作るにあるものへと述べるいないのと閉じる必要があります。さらに、それらの図面を作ることは、実際にプログラミングの質問ではありません。 –
CoreGraphicsを見ることができます。 – azamsharp
'UILabel'で女性と男性の文字を使い、System 200' '♀' '' "♂" 'のような大きなフォントを使います。 – vacawama