【问题标题】:C4 stepper custom imagesC4 步进器自定义图像
【发布时间】:2013-10-29 12:16:37
【问题描述】:

我正在尝试在 C4Stepper 上使用我自己的图像。我是这样设置的

@implementation C4WorkSpace{
    C4Stepper *theStepper;
    C4Image *stepperBackground;
    C4Image *stepperPlus;
}

-(void)setup {
    //load backgroundimage
    stepperBackground=[C4Image imageNamed:@"icon_zoom.png"];
    stepperBackground.width=100;

    //load incrementImage
    stepperPlus=[C4Image imageNamed:@"icon_zoom_plus.png"];
    stepperPlus.width=stepperBackground.width/2;

    //setup stepper
    theStepper=[C4Stepper stepper];
    [theStepper setBackgroundImage:stepperBackground forState:NORMAL];
    [theStepper setIncrementImage:stepperPlus forState:NORMAL];

    theStepper.center=self.canvas.center;
    [self.canvas addSubview:theStepper];  
}

2 个图标如下所示: 奇怪的是,画布上出现的内容看起来像这样:! zoomStepperImages 有什么特殊要求吗?一定的尺寸还是什么?

【问题讨论】:

    标签: ios c4


    【解决方案1】:

    有特殊要求。

    • 使用的背景图像是“可拉伸的”,因此您必须设计一个可以在需要时拉伸的按钮图像。如果您查看任何按钮图像(包括在 Media.xcassets 文件夹中),您会发现它们是通用的。例如,选中的按钮背景图片如下所示:

    • 同样,增量/减量图像本身独立于背景图像。同一文件夹中包含的 incrementNormal 图像如下所示:

    • 可以看到C4Stepper类的默认值是如何在C4AppDelegate.m中初始化的:

    ...

    [C4Stepper defaultStyle].style = basicStyle;
    [C4Stepper defaultStyle].tintColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"lightGrayPattern"]];
    [[C4Stepper defaultStyle] setDecrementImage:[C4Image imageNamed:@"decrementDisabled"] forState:DISABLED];
    [[C4Stepper defaultStyle] setDecrementImage:[C4Image imageNamed:@"decrementNormal"] forState:NORMAL];
    [[C4Stepper defaultStyle] setIncrementImage:[C4Image imageNamed:@"incrementDisabled"] forState:DISABLED];
    [[C4Stepper defaultStyle] setIncrementImage:[C4Image imageNamed:@"incrementNormal"] forState:NORMAL];
    
    • 所以,您要做的是为您的背景创建一个图像(我的是可拉伸的,因为中间的东西是可以水平拉伸而不会看起来拉伸的直线。您还想创建独立的 + - 图像以进行增量/ 减少按钮的边数。

    就像一个注释,当我创建 C4Button 类时,我不得不玩弄我正在创建的各种图像以让它们“看起来”正确......最后,我不得不做一个大量的调整和实验来了解它们是如何渲染的。我在弄清楚这一点时遇到的困难是UIButton 本身的渲染机制有点奇怪,我必须学习如何将东西放入按钮中以便它们正确渲染。

    【讨论】:

    • 太棒了!因此,就我的目的而言,实际上改变步进器的色调就足够了。 stepper.tint 不在参考中,所以很难找到。谢谢!
    • 哈,是的,它是“是”,它是“不是”......刚刚检查并显示在“_0”...... appledoc 的问题以及 tintcolor 标题的格式化方式...... . 我会解决的。
    猜你喜欢
    • 2019-03-20
    • 2019-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-26
    • 2019-11-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多