【问题标题】:Identifying a UISegmentedControl Inside a UITableViewCell在 UITableViewCell 中识别 UISegmentedControl
【发布时间】:2010-06-15 00:31:34
【问题描述】:

我正在尝试使用 tableview 中的分段控件,然后当用户选择一个项目时,我想显示一个微调器,而一些信息发布到 web 服务。

我遇到的问题是:如何添加委托并访问引用的分段控件,以便将其 alpha 或可见性设置为 NO?另外,最好的做法是什么,我知道有标签,但不确定它们在这种情况下如何工作。

NSArray * segmentItems= [NSArray arrayWithObjects: @"one", @"two", @"three", @"four", @"five", nil];
UISegmentedControl *segmentedControl= [[[UISegmentedControl alloc] initWithItems: segmentItems] retain];
segmentedControl.segmentedControlStyle= UISegmentedControlStyleBar;
segmentedControl.selectedSegmentIndex= -1;

[segmentedControl addTarget: self action: @selector(onSegmentedControlChanged:) forControlEvents: UIControlEventValueChanged];
segmentedControl.frame  = CGRectMake(2, 0, 300, 30);
segmentedControl.tintColor= [UIColor grayColor];

这是我的代表

 - (IBAction)onSegmentedControlChanged:(id)sender
{
    int clickedSegment= [sender selectedSegment];
}

如何从发件人访问 UISegmentedControl,以便将可见性设置为关闭?我总是可以通过扩展它来设置填充我的segmentedControl的我的对象,我只需要弄清楚如何获取对单元格和SegmentedControl的引用?

【问题讨论】:

    标签: iphone uitableview uisegmentedcontrol


    【解决方案1】:

    使用分段控件创建/返回单元格时,请在将单元格返回到表格之前设置委托对象。

    编辑:

    抱歉,误读了问题。传递给委托方法的sender 将是您需要识别的实际 UISegmentedControl 实例。在委托方法中,将泛型 sender 转换为 UISegmentedControl`,然后根据需要设置其属性。

    选定的表格行被传递给表格视图选择方法。

    【讨论】:

    • 铸造是这样完成的,我发现: UISegmentedControl *control = (UISegmentedControl *)sender;
    猜你喜欢
    • 2011-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-28
    • 1970-01-01
    相关资源
    最近更新 更多