1. 程式人生 > >UI控件相關宏定義

UI控件相關宏定義

position cst err eal efi dde eww order init

1、顯示設置

  • 1.1 view圓角和邊框

/** 設置view圓角和邊框 */
#define kViewBorderRadius(View, Radius, Width, Color)[View.layer setCornerRadius:(Radius)];[View.layer setMasksToBounds:YES];[View.layer setBorderWidth:(Width)];[View.layer setBorderColor:[Color CGColor]]
  • 1.2 設置加載提示框

    • 1.2.1 第三方框架:Toast
    /** 第三方框架:Toast */
    #define kToast(str)              CSToastStyle *style = [[CSToastStyle alloc] initWithDefaultStyle]; [kWindow  makeToast:str duration:0.6 position:CSToastPositionCenter style:style];kWindow.userInteractionEnabled = NO; dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.6 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{kWindow.userInteractionEnabled = YES;});\
    • 1.2.2 第三方框架:MBProgressHUD
    // 加載
    #define kShowNetworkActivityIndicator() [UIApplication sharedApplication].networkActivityIndicatorVisible = YES
    // 收起加載
    #define HideNetworkActivityIndicator()      [UIApplication sharedApplication].networkActivityIndicatorVisible = NO
    // 設置加載
    #define NetworkActivityIndicatorVisible(x)  [UIApplication sharedApplication].networkActivityIndicatorVisible = x
    
    #define kWindow [UIApplication sharedApplication].keyWindow
    
    #define kBackView         for (UIView *item in kWindow.subviews) { if(item.tag == 10000) { [item removeFromSuperview]; UIView * aView = [[UIView alloc] init]; aView.frame = [UIScreen mainScreen].bounds; aView.tag = 10000; aView.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.3]; [kWindow addSubview:aView]; } } 
    #define kShowHUDAndActivity kBackView;[MBProgressHUD showHUDAddedTo:kWindow animated:YES];kShowNetworkActivityIndicator()
    
    
    #define kHiddenHUD [MBProgressHUD hideAllHUDsForView:kWindow animated:YES]
    
    #define kRemoveBackView         for (UIView *item in kWindow.subviews) { if(item.tag == 10000) { [UIView animateWithDuration:0.4 animations:^{ item.alpha = 0.0; } completion:^(BOOL finished) { [item removeFromSuperview]; }]; } } 
    #define kHiddenHUDAndAvtivity kRemoveBackView;kHiddenHUD;HideNetworkActivityIndicator()
    

2、事件設置

/** 設置View的tag屬性 */
#define VIEWWITHTAG(_OBJECT, _TAG) [_OBJECT viewWithTag : _TAG]

3、角度轉換處理

/** 由角度獲取弧度 有弧度獲取角度 */
#define degreesToRadian(x) (M_PI * (x) / 180.0)
#define radianToDegrees(radian) (radian*180.0)/(M_PI)

UI控件相關宏定義