2016-09-15 4 views
1

У меня есть UIView внутри UIView UIViewController с Height = 149.0 и Width = 123.5.Заполнить UIView с цветом в процентах

Я заполняю этот UIView цветом, и устанавливаю высоту цвета для заполнения на основе ответа в процентах от остального URL.

Как заполнить весь вид указанными выше размерами для 100% и разных значений.

Любая помощь будет оценена по достоинству. Спасибо

+0

Вы имеете в виду вы хотите пользовательский индикатор? – kennytm

+0

Нет, мне не нужен индикатор выполнения. Я также могу заполнить UIView, так как высота UIView равна 149,0, для значения 100 она заполняет UIView на полпути. Поэтому я хочу, чтобы он заполнил 100% для высоты 149.0 –

ответ

1

Если вы хотите, чтобы заполнить несколько цвета в вашем uiview, то вам нужно создать подкласс UIView и должны переопределить это drawRect методы что-то подобное,

override func drawRect(rect: CGRect) { 


    var percentage = CGFloat() //can declare as instance variable or globally which you get from web service and set it's value!! 



    percentage = 0.5 

    let upperRect = CGRectMake(rect.origin.x, rect.origin.y, rect.size.width, rect.size.height*percentage) 

    let lowerRect = CGRectMake(rect.origin.x, rect.origin.y + (rect.size.height * percentage), rect.size.width, rect.size.height * (1-percentage)) 

    UIColor.redColor().set() 
    UIRectFill(upperRect) 
    UIColor.greenColor().set() 
    UIRectFill(lowerRect) 



} 
+0

Я заполняю только один цвет –

+0

, а затем задал цвет только один раз! это просто демо! вы должны манипулировать кодом в соответствии с вашим требованием !!! – Lion

Смежные вопросы