3

我对这个 iphone 开发的东西很陌生,我正在一家公司处理一些现有的代码。我试图设置初始值的 uislider 实际上位于 UITableViewCell 中,并且是一个自定义控件。我在考虑单元格初始化

cell = (QuantitiesCell *)[self loadCellWithNibName:@"QuantitiesCell" forTableView:ltableView withStyle:UITableViewCellStyleDefault];

我可以打电话给类似的东西

((QuantitiesCell *)cell).value = 5;

实际的 QuantitiesCell 类具有成员值和以下功能

-(void)initCell;{
    if (listOfValues == nil) {
        [self initListOfValues];
    }
    quantitiesSLider.maximumValue = [listOfValues count]-1;
    quantitiesSLider.minimumValue = 0;
    quantitiesSLider.value = self.value;
}

-(void)initListOfValues;{
    listOfValues = [[NSMutableArray alloc] initWithCapacity:10];
    int j =0;
    for (float i = minValue; i <= maxValue+increment; i=i+increment) {
        [listOfValues addObject:[NSNumber numberWithFloat: i]];
        if (i == value) {
            quantitiesSLider.value = j;
        }
        j++;
    }
}

就像我说的,我在这方面很新,所以如果我需要发布更多代码来显示什么会得到帮助,请告诉我,

此滑块始终默认为 1,滑块范围通常为 1-10,我想将其设置为我要编辑的项目的特定值。

4

2 回答 2

9

如果您的链接正确(您已在 Interface Builder 中建立连接),则设置 slider.value 是正确的方法。如果您在代码中创建了 UISlider,您所要做的就是设置 value 属性。如果这不起作用,那么首先确保该对象是“活动的”(正确分配、未释放、未超出范围等),其次确保您设置 slider.value 的函数实际上正在被调用。

如果您正在使用 Interface Builder 并且不确定如何将滑块连接为IBOutlet,您应该查看 iTunes 大学 - 搜索“CS193P”以查找斯坦福大学的一些优秀视频。第一对将带您完成这些连接。如果使用 IB 并且您没有建立连接 - 什么都不会发生。

于 2010-05-21T01:35:39.843 回答
2

PS我有相同的发行者-您需要先添加 UISlide 视图,然后才能更改值。

于 2014-04-25T19:24:55.257 回答