Я использую UIBeizerPath для рисования StepsdotView. Помогите, пожалуйста, перевернуть BeizerPath.
Проверьте код:
public override func draw(_ rect: CGRect) {
let availableSpace = bounds.width - (insets.left + insets.right)
let availableSpaceForLines = availableSpace - (dotRadius * 2) * CGFloat(numberOfSteps)
var lineWidth: CGFloat = availableSpaceForLines
if numberOfLines > 0 {
lineWidth = availableSpaceForLines / CGFloat(numberOfLines)
}
let origin = CGPoint(x: insets.left, y: (bounds.height - (dotDiameter)) / 2.0)
let dotSize = CGSize(width: dotDiameter, height: dotDiameter)
var dotRect = CGRect(origin: origin, size: dotSize)
//Create dots and lines
for index in 0 ..< numberOfSteps {
var dotColor = unSelectedColor
if index 0 {
let xCoordinate = dotRect.origin.x - lineWidth + dotRadius / 2
let yCoordinate = dotRect.midY - lineHeight / 2.0
let lineOrigin = CGPoint(x: xCoordinate, y: yCoordinate)
let lineSize = CGSize(width: lineWidth - dotRadius, height: lineHeight)
let lineRect = CGRect(origin: lineOrigin, size: lineSize)
let leftLine = UIBezierPath(rect: lineRect)
dotColor.setFill()
leftLine.fill()
}
//Draw dot
let dot = UIBezierPath(ovalIn: dotRect)
dot.fill()
//Frame for next dot
dotRect.origin.x += dotDiameter + lineWidth
}
}
Подробнее здесь: https://stackoverflow.com/questions/719 ... guages-ios
Как отразить этот BeizerPath для языков rtl ios ⇐ IOS
Программируем под IOS
-
Anonymous
1761963897
Anonymous
Я использую UIBeizerPath для рисования StepsdotView. Помогите, пожалуйста, перевернуть BeizerPath.
Проверьте код:
public override func draw(_ rect: CGRect) {
let availableSpace = bounds.width - (insets.left + insets.right)
let availableSpaceForLines = availableSpace - (dotRadius * 2) * CGFloat(numberOfSteps)
var lineWidth: CGFloat = availableSpaceForLines
if numberOfLines > 0 {
lineWidth = availableSpaceForLines / CGFloat(numberOfLines)
}
let origin = CGPoint(x: insets.left, y: (bounds.height - (dotDiameter)) / 2.0)
let dotSize = CGSize(width: dotDiameter, height: dotDiameter)
var dotRect = CGRect(origin: origin, size: dotSize)
//Create dots and lines
for index in 0 ..< numberOfSteps {
var dotColor = unSelectedColor
if index 0 {
let xCoordinate = dotRect.origin.x - lineWidth + dotRadius / 2
let yCoordinate = dotRect.midY - lineHeight / 2.0
let lineOrigin = CGPoint(x: xCoordinate, y: yCoordinate)
let lineSize = CGSize(width: lineWidth - dotRadius, height: lineHeight)
let lineRect = CGRect(origin: lineOrigin, size: lineSize)
let leftLine = UIBezierPath(rect: lineRect)
dotColor.setFill()
leftLine.fill()
}
//Draw dot
let dot = UIBezierPath(ovalIn: dotRect)
dot.fill()
//Frame for next dot
dotRect.origin.x += dotDiameter + lineWidth
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/71938149/how-to-mirror-this-beizerpath-for-rtl-languages-ios[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия