iphone UIProgressView在更新时消失

iphone UIProgressView在更新时消失,iphone,uiview,uiprogressview,Iphone,Uiview,Uiprogressview,我正在更新一个名为“弹药”的UIProgressView。当我更新进度时,UIProgressView将从UIView中消失,就像它被隐藏或移动到另一个视图后面一样 代码 - (void)updateAmmo:(float) inputAmmo capacity:(float)inputCapacity{ //Calculate the progress value float value = inputAmmo/inputCapacity; //If nothing ha

我正在更新一个名为“弹药”的UIProgressView。当我更新进度时,UIProgressView将从UIView中消失,就像它被隐藏或移动到另一个视图后面一样

代码

- (void)updateAmmo:(float) inputAmmo capacity:(float)inputCapacity{

   //Calculate the progress value
   float value = inputAmmo/inputCapacity;

   //If nothing has changed don’t update
   if(value != ammo.progress){
      [ammo setProgress:value];
   }
}
我检查过的东西

  • 检查以查看是否正在隐藏它
  • 将视图带到前面
  • 已尝试[弹药设置进度:弹药。进度-0.01];这也破坏了它
  • 插入值直接起作用[ammo setProgress:0.950000]
  • 尝试添加[弹药设置需要显示]
日志记录值提取

  • 2011-07-23 15:15:34.659 XXXXXXX[2399:207]价值-1.000000
  • 2011-07-23 15:15:34.659 XXXXXXX[2399:207]值-0.950000
  • 2011-07-23 15:15:34.712 XXXXXXX[2399:207]值-0.900000

提前感谢您的帮助。

如果您使用IB创建进度签出,请与他们联系

我怀疑您的值属性立即变为0或低于0

        - (void)updateAmmo:(float) inputAmmo capacity:(float)inputCapacity{


            float value = inputAmmo/inputCapacity;




            if(value != [ammo progress]){
                [ammo setProgress:value];
            }
        }

我怀疑你的value属性会立即转到0感谢回复,但if语句不是原因。我试了一下你的建议,但没有成功。但是我认为问题不在于if语句仅仅检测到值的变化。日志提取是从值变量中提取的,该值变量减少了0.05。对不起,我没有遵循?记录显示它从1.00000开始,然后是0.950000、0.900000等。。。此外,如果它达到0,那么该条肯定是空的,并且不会从屏幕上完全消失?如果您使用IB进行进度创建签出,请与他们连接。