2012-05-15 3 views
0

Я пытаюсь показать только одна часть ч управления UIStepper с помощью слоя, используя этот кодUIStepper только показать знак минус

UIStepper *testStepper = [[UIStepper alloc]init]; 
[testStepper setFrame:CGRectMake(120, 220, 94, 27)]; 
testStepper.maximumValue = 5; 
testStepper.minimumValue = 1; 
testStepper.value = 1; 

testStepper.layer.cornerRadius =3; 
testStepper.layer.bounds= CGRectMake(0, 0, 47, 27); 
testStepper.layer.masksToBounds=YES; 
testStepper.layer.opacity = 1; 

[self.view addSubview:testStepper]; 

но не полностью работает. UIStepper теперь показывает только левую часть UIStepper (минусовая сторона), что я хочу, но когда я нажимаю правую сторону минусовой стороны, она все равно добавляет значение, и когда я нажимаю левую сторону, она вычитает (что я хочу и для левой стороны). Что я делаю неправильно?

Благодаря

+1

Почему не следует использовать UIButton и метку и обрабатывать max в методе действий? – Justin

ответ

1

Вы makstoBounds набор для YES. В основном вы прячете UIStepper с:

testStepper.layer.bounds= CGRectMake(0, 0, 47, 27); 
testStepper.layer.masksToBounds=YES; 

, если вы выполните следующие действия вы будете видеть всю UIStepper.

testStepper.layer.bounds= CGRectMake(0, 0, 47, 27); 
//testStepper.layer.masksToBounds=YES; 
+0

Ну, я думаю, вот что происходит: Когда я устанавливаю границы (0,0,47,27), UIStepper показывает только знак минуса. Но он также масштабирует кнопки в UIStepper, поэтому созданный UIStepper с единственным знаком минус все еще имеет две половины, где левая часть обрабатывает вычитание и добавление правой стороны. Можно ли удалить это поведение? – Kridie

+0

Почему вы используете границы? – Joe

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

  • Нет связанных вопросов^_^