【问题标题】:iOS 5 - Getting image like add contact buttoniOS 5 - 获取图像,如添加联系人按钮
【发布时间】:2012-01-11 20:38:47
【问题描述】:

我想自定义一个 UITableViewCell 的附属视图,所以我需要一个 UIImage。 我希望该图像类似于“添加联系人”类型的按钮(那个蓝色加号)。

我该怎么做?

【问题讨论】:

    标签: iphone uitableview ios5 uiimageview uiimage


    【解决方案1】:

    您可以通过使用UIButtonTypeContactAdd 类型创建UIButton 并将其添加为单元格的accessoryView 来实现。

    UIButton contactAddButton = [UIButton buttonWithType:UIButtonTypeContactAdd];
    cell.accessoryView = contactAddButton;
    

    【讨论】:

    • 问题在于它覆盖了我的 didSelectRow 事件。我想选择整行,如果我在按钮内部单击,则不要按下按钮。我希望它表现得像一个图像。
    【解决方案2】:

    解决了。如果我将用户交互设置为禁用,它只是没有点击交互并且表现得像图像。

    UIButton *contactAddButton = [UIButton buttonWithType:UIButtonTypeContactAdd];
    [contactAddButton setUserInteractionEnabled:FALSE];
    cell.accessoryView = contactAddButton;
    

    【讨论】:

    • 除非点击单元格中的图像会选择该单元格。点击将userInteractionEnabled 设置为NO 的按钮不会执行任何操作,因为它是系统中无处不在 的按钮,您的用户会对它为什么不执行任何操作感到困惑。
    • 但是如果我单击按钮(或单元格中的任何其他位置),它将选择单元格并推送另一个视图。它的行为就像默认的附件按钮之一(即 UITableViewCellAccessoryDe​​tailDisclosureButton)。我不明白他们为什么会感到困惑。
    • 您是说按钮将触摸事件转发到单元格吗?有趣...
    【解决方案3】:

    你可以在这里得到一个:http://blog.twg.ca/2010/11/retina-display-icon-set/

    【讨论】:

    • 这是一个很好的图标集,但不是我想要的。我需要一个蓝色图像,例如“添加联系人”按钮。
    • 您可以从这个集合中获取图标图像并创建一个类似的按钮。如果你想要完全相同的效果,你可以创建一个 UIBarButtonItem (虽然我会建议 UIButton )。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多