【问题标题】:Custom UISegmented Control自定义分段控件
【发布时间】:2017-11-02 19:49:10
【问题描述】:

如何在 iOS UISegmentedControl (Objective-C) 中实现这一点

我想为选定的段控件显示舍入选择。

任何帮助将不胜感激。

【问题讨论】:

    标签: ios objective-c uisegmentedcontrol


    【解决方案1】:

    UISegmentedControl 有一个customization 部分。

    总结如下: 您所要做的就是为不同的状态组合提供分隔图像。这意味着您需要为以下状态提供 3 张图像:

    1. 两个未选中段之间的图像
    2. 左侧已选中和右侧未选中的片段之间的图像
    3. 右侧选中和左侧未选中的片段之间的图像

    代码如下:

    Objective-C

    // Image between two unselected segments.
    [mySegmentedControl setDividerImage:image1 forLeftSegmentState:UIControlStateNormal
                      rightSegmentState:UIControlStateNormal barMetrics:barMetrics];
    // Image between segment selected on the left and unselected on the right.
    [mySegmentedControl setDividerImage:image1 forLeftSegmentState:UIControlStateSelected
                      rightSegmentState:UIControlStateNormal barMetrics:barMetrics];
    // Image between segment selected on the right and unselected on the right.
    [mySegmentedControl setDividerImage:image1 forLeftSegmentState:UIControlStateNormal
                      rightSegmentState:UIControlStateSelected barMetrics:barMetrics];
    

    斯威夫特

        // Image between two unselected segments.
        mySegmentedControl.setDividerImage(myImage, forLeftSegmentState: UIControlState.Normal,
                                           rightSegmentState: UIControlState.Normal, barMetrics: UIBarMetrics.Default)
    
        // Image between segment selected on the left and unselected on the right.
        mySegmentedControl.setDividerImage(myImage, forLeftSegmentState: UIControlState.Selected,
                                           rightSegmentState: UIControlState.Normal, barMetrics: UIBarMetrics.Default)
    
        // Image between segment selected on the right and unselected on the left.
        mySegmentedControl.setDividerImage(myImage, forLeftSegmentState: UIControlState.Normal,
                                           rightSegmentState: UIControlState.Selected, barMetrics: UIBarMetrics.Default)
    

    这是一个post,它解释了如何实现这一点。

    如果您看到链接的帖子,那是 3 张图片。附上截图供参考:

    【讨论】:

    • 你能发布一些 image1 的示例图片吗?
    猜你喜欢
    • 1970-01-01
    • 2012-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多