SDEASYCAM 手机APP软件 前30页代码.docx
《SDEASYCAM 手机APP软件 前30页代码.docx》由会员分享,可在线阅读,更多相关《SDEASYCAM 手机APP软件 前30页代码.docx(29页珍藏版)》请在三一办公上搜索。
1、#importMKHorizMenu.h#defineKButtonBaseTag10000#defineKLeftOffset5implemeniationMKHorizMenuSyntheSiZetitles=Jitles;synthesizeSelectedlmage-_selectedlmage;synthesizeitemSelectedDelegate;SyZheSiZedataSource:SynmeSiZeitemCount=JtemCount;-(void)awakeFromNib(self.bonces=YES;self.scrollEnabled=YES;self.alw
2、aysBounceHorizontalYES;self.alwaysBounceVertical=NO;Self.ShowsHorizontaiscroIIIndicator=NO;Self-ShowsverticaiscrolllndicatorNO;SeIfreloadData;-(void)TeIoadSoundBtn()-(void)reloadData(NSArray*viewsToRemove-selfsubviews;for(UIView*vinViewsToRemove)vremoveFromSperview);)SeIfJtemCount=dataSourcenumberOf
3、ltemsForMenu:self;self.backgroundColor=dataSourcebackgroundColorForMenuzself;/Self.Selectedlmage=dataSourceSelecteclltemImageForMenuiseIf;UIFont*buttonFont=(UIFontboldSystemFonlOfSizer15;intbultoPadding-5;inttag=KButtonBaseTag;intxPosRLeftOffset;CGFIoatbtnTotalWidth=O.Of;for(inti=O;iself.itemCount;i
4、+)Ullmage*bglmg=UllmageimageNamed:dataSourcehorizMenu:selftitleForltemAtlndex:i;btnTotalWidth+=bgImg.size.width;if(i3)NSLog(OK);)计算左右变距CGFIoattotalLen=(self.itemCount-1)*buttonPadding+btnTotalWidth;CGFIoatleft-(self.superview.frame.size.width-totalLe)2;f(leftXO)IeftX=XPos;XPos=IeftX;for(intiO;iself.
5、itemCount;i+)(NSString,title=UIButton*customButtonUIButtonbuttonWithTypeUIBultonTypeCuslom;CustomButtonsetTitle:titleforState:UIControlStateNormal;CustomButtonJitleLabeLfont=buttonFont;Ullmage*bglmg=UllmageimageNamed:dataSourcehorizMenu:selftitleForltemAtlndex:i:(CustomButtonSetBackgroundImagerbgImg
6、forState:UIcontroIStateNormaI;CustomButtonsetBackgroundlmage:UllmageimageNamedJdatasourceselectedltemlmageForMenuiseIfitemAtIndexiiforState:UIcontroIStateSeIected;(CustomButtonsetBackgroundlmage:UllmageimageNamed:dataSourceselectedltemlmageForMenu:selfitemAtlndex:iforState:IJlContrOIStaIeHighlighted
7、;CustomButtonJag=tag+;CustomButtonaddTarget:selfaction:selector(buttonTapped:)forControlEvents:UIControlEventTouchUplnside;CustomButtonaddTarget:selfaction:selector(buttonTouchDown:)forControlEvents:UIControlEventTouchDown:CustomButtonJrame-CGRectMake(xPos,3,bglmg.size.width,38):Pos+=bglmg.size.widt
8、h;if(i1self.itemCount)xPos+=buttonPadding;sefaddSubviewxustomButto;xPos+=IeftX:if(xPosself.frame.size.width)xPos-self.frame.size.width;self.cotentSize=CGSizeMake(Pos,self.frame.size.height);(SelflayoutSubviews;)#import#import#importCameraMultiLiveViewController.h#import#importVloTCamera/ImageBufflnf
9、o.h#import#import#importAppDelegate.h#import*MyNavViewController.himport-UIDevice+Device,h#defineDEF_WAIT4ST0PSH0W_TIME250#CIefineDEF-SplitViewNm4#defineDEFReTryConnectlnterval25*1000#defineDEF_ReTryTimes10interfaceCameraMultiLiveViewController()MyCamera*mDummyCam:NSMutabIeArray,marlmg-Vdo:intmReTry
10、TimesArrayDEFSpIitViewNum;UnsignedintmnLastReTryTickArray(DEF-SplitViewNum;)end(implementationCameraMultiLiveviewControIIerSynmeSiZebStopShowCompletedLock;synthesizeSelectedAudioMode;SyntheSiZecamNeedReconnect;synthesizeSeIectCameraArray;synthesizeCameraArray;SyntheSiZeChanneIArray;#PragmamarkMethod
11、s-(Ullnterfaceorientation)PreferredlnterfaceorienlationForPresentation(returnUllntertaceOrientationLandscapeLeft;)(CGRect)ZoomRectForscroliviewxuiscroIIView*)_scrollViewwithScale:(CGFIoat)scaleWithCenter:(CGPoint)CenterCGReclzoomRect:HThezoomrectisinthententviewsordinates.HAtazoomscaleof1.0.itwouldb
12、ethesizeofIhe/imageScrollView,sbounds.HAsthezoomscaledecreases,somorententisvisible,hesizeoftherectgrows.ZoomReCISiZe.height=_scrollView.frame.size.height/scale;zoomRect.size.width=scrollView.frame.size.width/scale;Uchooseanoriginsoastogettherightcenter.zoomRct.origin.x=center.x-(zoomRect.size.width
13、/2.0);zmRect.origin.y=center.y-(zoomRect.size.height/2.0);returnzoomRect;)-(Ullmage*)getUllmage:(char*)buffWidth:(NSInteger)WidthHeight:(NSInteger)heightCGDataProviderRefprovider=CGDataPrOViderereateWithData(NULL,buff,width*height*3tNULL);CGcoIorSpaceRefcolorspace=CGColorSpaceCreatDeviceRGB():CGlmag
14、eRefimgRef=CGlmageCreat(width,height,8l24,width*3,colorSpace1kCGBitmapByteOrderDefaut,provider,NULL,true,kCGRenderingIntentDefauIt);Ullmage*img=UIImageimageWithCGImagejmgRef;f(imgRef!=nil)(CGImageRelease(imgRef);imgRef=nil;if(colorSpace!=nil)CGcolorspaceRelease(CoIorSpace);lorSpace=nil;f(providerlni
15、l)CGDataPrOViderReleaSe(ProVider);provider-nil;returnimgcopyautorelease;)-(void)camStopShowr(int)algnoreldxisCamStopShow=YES:for(inti-O;iDEF_SplitViewNum;i+)if(i=algnored)continue;MyCamera*testCamera=(CameraArrayobjectAtIndexzi;if(testCamera.id!=nil&!testCamera.uidisEqualToString:(null)NSNumber*temp
16、ChannelChanneIArrayobjectAtIndex:1;if(testCamera.sssionState=CONNECTIONSTATE_CONNECTED&(testCameragetConnectionStateOfChannel:0=CONNECTION_STATE_CONNECTED)testCamera.isShowlnMltiView=NO;testCamerastopShow:tempChannelintVaue;)-(void)reStartShowisCamStopShowNO;for(inti=0jiDEFSpIitViewNum;i+)MyCamera*t
17、empCamera=CameraArrayobjectAtldex:i;if(tempCamera.uid!=nil<empCamera.uidisEqualToString:*(null)N)(NSNumbertempChannel=ChanneIArrayobjectAtIndex:1;if(tempCamera.sessionStateCONNECTION_STATE_CONNECTED&temCameragetConnectionStateOfChannekOCONNECTION_STATE_CONNECTED)if(!isGoPlayEvent)tempCamera.isShow
18、lnMultiViewYES;(tempCameraStartShoWjtempChanneIIntegerVaIueJScreenObjectiseIf;)-(vod)reConnectAndShowfor(inti=O;iDEF_SplitViewNum;i+)MyCamera*tempCameracameraArrayObjectAtIndex:i;if(tempCamera.uid!=nil&!tempCamera.uidisEqualToString:(null)ChanneIArrayobjectAtIndex:1;SelfdisconnectCameralempCamera.Ui
19、d;tempCameradisconnect:tempCameraconnect:tempCamera.uidJ;tempCamerastartz;if(!isGoPlayEvent)tempCamera.isShowlMultiViewYES;/tempCamerastartShow:0ScreenObject:self;)tempCamera.delegate2=self;)-(void)disnnectCameraNSStrig)strUID(for(inti=0;iDEFSpIitViewNum;i+)MyCamera*cam-CameraArrayobjectAtIndex:1);N
20、SNumber*numChannel=ChannelArrayobjectAtIndexJ:if(cam.uidisEqualToString:strUID)camstop:numChannelintValue;)进入播放界面(IBAction)goLiveView:(id)sender(intnld=(int)(UIView*)sendertag;MyCameraVempCamera=CameraArrayobjectAtIndex:nld;if(tempCamera.uid!=nil&!(tempCamera.uidisEqualToString:(null)&(tempCamera.Se
21、SSionState=CONNECTION_STATE_CONNECTED&tempCameragetConnectionStateOfChannel:0=CONNECTION_STATE_CONNECTED)ntchannel=(int)channelArrayobjectAtlndex:nldxintVaue;SelfcamStopShow:nldx;CameraLiveviewControIIer,controller=(CameraLiveViewControllerallocinitWithNibName:CameraLiveViewbundle:nil;controller.cam
22、eratempCamera;ControIIer.ViewTag=NSNumbernumberWithlnt:(int)(UIView*)sendertag;cotroller.delegate=self;ControIIer-SelectedChannel=channel;UlNavigationControIIer*customNavControllerMyNavViewControllerallocinit:SelfpresentviewcontrollerrcustomNavControIIeranimated:YESOOmPlelion:nil;(CustomNavControIIe
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SDEASYCAM 手机APP软件 前30页代码 手机 APP 软件 30 代码
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-4294338.html