UISlider如何设置初始值

sli*_*lim 1 iphone uislider

我对这个iphone开发人员很新,我正在研究公司的一些现有代码.我试图设置初始值的uislider实际上是在UITableViewCell中,并且是一个自定义控件.我正在思考单元初始化

cell = (QuantitiesCell *)[self loadCellWithNibName:@"QuantitiesCell" forTableView:ltableView withStyle:UITableViewCellStyleDefault];
Run Code Online (Sandbox Code Playgroud)

我可以打电话给像

((QuantitiesCell *)cell).value = 5;
Run Code Online (Sandbox Code Playgroud)

实际的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++;
    }
}
Run Code Online (Sandbox Code Playgroud)

就像我说的那样,我对此非常陌生,所以如果我需要发布更多代码以显示最新情况,请告诉我,

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

Ada*_*ach 6

如果链接正确(在Interface Builder中建立了连接),则设置slider.value是正确的方法.如果您已在代码中创建了UISlider,则只需设置value属性即可.如果这不起作用,那么首先要确保对象是"实时"(正确分配,不释放,不在范围之外等),其次是实际调用设置了slider.value的函数.

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