UISlider does not drag iOS -
i implementing sound player. slider not drag.
.h
@property (strong, nonatomic) iboutlet uislider *currenttimeslider; @property bool scrubbing;
.m
/* * sets current value of slider/scrubber * sound file when slider/scrubber used */ - (ibaction)setcurrenttime:(id)scrubber { //if scrubbing update timestate, phone call updatetime faster not wait sec , dont repeat nslog(@"%@scrubber",@"drag"); [nstimer scheduledtimerwithtimeinterval:0.01 target:self selector:@selector(updatetime:) userinfo:nil repeats:no]; [self.audioplayer setcurrentaudiotime:self.currenttimeslider.value]; self.scrubbing = false; } /* * sets if user scrubbing right * avoid slider update while dragging slider */ - (ibaction)userisscrubbing:(id)sender { nslog(@"%@",@"slider drag"); self.scrubbing = true; } /* * updates time label display , * current value of slider * while sound playing */ - (void)updatetime:(nstimer *)timer { //to don't update every second. when scrubber mousedown the slider not set if (!self.scrubbing) { //self.currenttimeslider.value = [self.audioplayer getcurrentaudiotime]; } nslog(self.scrubbing ? @"yes" : @"no"); if(self.scrubbing) { nslog(@"%@ scrubbing",@"sdfs"); } [self.currenttimeslider addtarget:self action:@selector(sliderdidendsliding:) forcontrolevents:(uicontroleventtouchupinside | uicontroleventtouchupoutside)]; long currentplaybacktime = [self.audioplayer getcurrentaudiotime]; self.currenttimeslider.value = currentplaybacktime / [self.audioplayer getaudioduration]; self.timeelapsed.text = [nsstring stringwithformat:@"%@", [self.audioplayer timeformat:[self.audioplayer getcurrentaudiotime]]]; self.duration.text = [nsstring stringwithformat:@"%@", [self.audioplayer timeformat:[self.audioplayer getaudioduration] - [self.audioplayer getcurrentaudiotime]]]; }
the slider not drag if drag slider moves previous position. ideas why slider not dragging.
thanks,
hello did u set continuous
property of uislider
yes
. everytime u alter slider value. set no
give value of release.
[myslider addtarget:self action:@selector(slidervaluechanged:) forcontrolevents:uicontroleventvaluechanged]; - (ibaction)slidervaluechanged:(uislider *)sender { nslog(@"slider value = %f", sender.value); }
did u handle slide event?.
and
where method sliderdidendsliding
u calling.
ios
No comments:
Post a Comment