UIPickerView 글꼴 크기에 대한 해결책은 많이 있지만 글꼴 기반 배열 및 UIViewController가 모두 필요합니다. UITableViewCell 내에서 Int Array를 사용하고 있으며 달성하려는 대상에서 작동하는 무언가를 찾지 못하는 것 같습니다. 어떤 도움을 주시면 감사하겠습니다UIPickerView 글꼴 크기 조정
import UIKit
class AirTemperatureTableViewCell: UITableViewCell, UIPickerViewDelegate, UIPickerViewDataSource
{
let numberOfComponents: Int = 2
let temperatureComponentRows: Int = 501
let temperatureSymbolComponentRows: Int = 2
let Fahrenheit: String = "F"
let Celsius: String = "C"
let minDegrees = -250
let maxDegrees = 250
private var degrees: Array<Int> = [Int]()
var temperature: Int = 30 // our default temperature
var temperatureType: String = "C" // our default type is Celsius
@IBOutlet var airTemperaturePicker: UIPickerView!
override func awakeFromNib()
{
super.awakeFromNib()
for i in self.minDegrees ..< self.maxDegrees+1
{
self.degrees.append(i)
}
self.airTemperaturePicker.selectRow(280, inComponent: 0, animated: true)
}
override func setSelected(selected: Bool, animated: Bool)
{
super.setSelected(selected, animated: animated)
}
func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int
{
return self.numberOfComponents
}
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int
{
if component == 0
{
return self.temperatureComponentRows
}
else
{
return self.temperatureSymbolComponentRows
}
}
func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String?
{
//
// If we are component 0, the degrees, return the value for the given row.
//
if component == 0
{
return String(self.degrees[row])
}
else
{
if row == 0
{
return self.Celsius
}
else
{
return self.Fahrenheit
}
}
}
func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
{
}
}
: 여기
는 코드입니다.
내 답변에서이 답변과 크게 다른 점은 무엇입니까? – Ike10
Caxix, 나는 ...을 제거하고 잘 동작합니다. 유일한 문제는 "C"또는 "F"기호를 잃어버린 것입니다. 어떻게 그들을 다시 들여 보낼 수 있을까요? –
나는 else 절의 사례를 사용하여 내 대답을 업데이트했습니다. 사용자 정의 색상, 정렬 등을 사용하여 몇 가지 추가 서식을 지정하는 것이 좋습니다. – caxix