iOS开发笔记(一)

1. 获取当天日期

NSDate *today;

today = [NSDate date];

 

2.[[UIDevice currentDevice] orientation] 通过这个获取设备状态是有以下七个状态:

UIDeviceOrientationUnknown                 

UIDeviceOrientationPortrait                    //Device oriented vertically, home button one the button

UIDeviceOrientationPortraitUpsideDown   //Device oriented vertically, home button one the top

UIDeviceOrientationLandscapeLeft           //Device oriented horizontally,home button on the right

UIDeviceOrientationLandscapeRight         //Device oriented horizontally, home button on the left

UIDeviceOrientationFaceUp                     //Device oriented flat, face up

UIDeviceOrientationFaceDown                 //Device oriented flat, face down

在有第一个和最后两个状态的情况下,如果是在状态发生变化的时候去做一些操作,那么是没问题的,因为操作的时候只捕获四个旋转状态即可。但是如果要根据在做操作的时候根据状态去做某些事情就会有问题,因为非常有可能取到那三个非旋转状态。解决方案:记住上一个旋转状态,当发现获取的状态不是四个旋转状态的时候,使用上一个正常旋转状态。

- (void)applicationDidFinishLaunching:(UIApplication *)application {



   [window addSubview:crateViewController.view];

	

   [[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];

	

   [[NSNotificationCenter defaultCenter] addObserver:self

      selector:@selector(orientationChanged:)

      name:@"UIDeviceOrientationDidChangeNotification" object:nil];

}
- (void)orientationChanged:(NSNotification *)notification

{

  UIInterfaceOrientation orientation = [[UIDevice currentDevice] orientation];

  if (UIDeviceOrientationIsPortrait(orientation) || UIDeviceOrientationIsLandscape(orientation))

  {

    if (!currentOrientation)

    {

      currentOrientation = orientation;

      [self prepareScreen];

    }

    currentOrientation = orientation;

  }

  [[UIApplication sharedApplication] setStatusBarOrientation:currentOrientation animated:YES];

}

3.UIButton 能吃掉所有的Touches事件,暂时还没有找到穿透的方法。

说明:在UIView中放置一个UIButton,这个UIButton的大小和UIView的大小和位置完全一致,这样的话UIView本身拥有的touchesBegan: touchesMoved:touchesEnded:等等事件全部都不能捕获到了。如果有相应的业务需求怎么办呢,建议用UIImageView, 通过touchesBegan和TouchesEnden事件来改变图片的资源,这样的话,也能达到button的点击效果了。

你可能感兴趣的:(ios开发)