关于UIView的Alpha和NSDate的两个使用方法

刚刚做一个PickerView的弹出效果.

遇到一个问题,PickerView放置在一个黑色透明的UIView上.

        _viewOfPickerView.backgroundColor =[[UIColor blackColor] colorWithAlphaComponent:0.75];

这种设置UIView是透明,但其上的控件(PickerView)不透明.不会被下面的控件颜色所干扰.

_viewOfPickerView.backgroundColor = [UIColor blackColor];
    _viewOfPickerView.alpha = 0.65;

这种设置,UIView是透明,其上的控件也是透明效果(不论颜色是否和UIView一致).

------------------------------分割线------------------------------

//该方法转自CocoaChina的l0ve_m00n的回帖
NSDate *date = [NSDate date];//给定的时间
NSDate *lastDay = [NSDate dateWithTimeInterval:-24*60*60 sinceDate:date];//前一天
NSDate *nextDat = [NSDate dateWithTimeInterval:24*60*60 sinceDate:date];//后一天

下面这个方法则可以直接讲NSDate转成格式化的NSString

- (NSString *)getDateStrFromDate:(NSDate *)date
{
    NSDateFormatter *formatter=[[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"yyyy-MM-dd"];
    return [formatter stringFromDate:date];   
}

---------------------分割线---------------------------------------

给出NSData,直接给出是星期几

#pragma mark - 根据日期计算是星期几
//该方法转自百度知道corproal的回复
- (NSString*)weekdayStringFromDate:(NSDate*)inputDate {
    
    NSArray *weekdays = [NSArray arrayWithObjects: [NSNull null], @"星期日", @"星期一", @"星期二", @"星期三", @"星期四", @"星期五", @"星期六", nil];
    
    NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
    
    NSTimeZone *timeZone = [[NSTimeZone alloc] initWithName:@"Asia/Shanghai"];
    
    [calendar setTimeZone: timeZone];
    
    NSCalendarUnit calendarUnit = NSWeekdayCalendarUnit;
    
    NSDateComponents *theComponents = [calendar components:calendarUnit fromDate:inputDate];
    
    return [weekdays objectAtIndex:theComponents.weekday];
    
}

网上找到的方法源码中已经标注出来.

以上.

你可能感兴趣的:(关于UIView的Alpha和NSDate的两个使用方法)