Я искал копию панели сетки кнопок, которую Facebook использует в своем приложении здесь:
Левая кнопка не нажата, правая нажата.
У меня возникли проблемы с воспроизведением состояния «нажатой» кнопки.Кто-нибудь может помочь?Вот что у меня так далеко:
Я доволен большинством из этого.Просто нужно привести в порядок размеры кнопок, но это тривиально.На моей панели инструментов левая кнопка должна быть нажата, а правая - нет.Понятно, что мне не хватает той тени на вершине, которую реализует Facebook.Как я могу повторить это?Я думал об использовании TTInnerShadowStyle
, но, похоже, не понял это правильно.Вот код, который генерирует стиль для каждой кнопки:
UIColor *gradientFill1 = RGBCOLOR(249, 250, 252),*gradientFill2 = RGBCOLOR(225, 228, 235);
if (state != UIControlStateNormal) {
gradientFill1 = RGBCOLOR(233, 234, 237);
gradientFill2 = RGBCOLOR(214, 217, 223);
}
TTStyle *style= [TTShapeStyle styleWithShape:[TTRoundedRectangleShape shapeWithRadius:3] next:
[TTInsetStyle styleWithInset:UIEdgeInsetsMake(1, 0, 1, 0) next:
[TTLinearGradientBorderStyle styleWithColor1:RGBCOLOR(140, 144, 150)
color2:RGBCOLOR(175, 179, 186) width:0.5 next:
[TTLinearGradientBorderStyle styleWithColor1:RGBCOLOR(184, 186, 192)
color2:RGBCOLOR(208, 212, 218) width:0.5 next:
[TTLinearGradientFillStyle styleWithColor1:gradientFill1
color2:gradientFill2 next:
[TTShadowStyle styleWithColor:RGBACOLOR(253,254,254,1.0) blur:0
offset:CGSizeMake(0, 1) next:
[TTImageStyle styleWithImageURL:nil defaultImage:nil
contentMode:UIViewContentModeScaleToFill
size:CGSizeZero next:
[TTTextStyle styleWithFont:[UIFont boldSystemFontOfSize:12.0f]
color:RGBCOLOR(81, 91, 120)
shadowColor:nil
shadowOffset:CGSizeMake(0, 0) next:nil]]]]]]]];
return style;
Любая помощь будет принята с благодарностью.Спасибо!