Saturday, April 25, 2015

iOS

What is a segue?
Instances of UIStoryboard that allow the transition from one view controller to another

Segues initiated from a button override any action previously executed by the button?
True.

What is a push segue?
The push seque is used to drill down in a hierarchical manner.

To comment or uncomment code quickly you can press ⌘/

-(id) initWithTitle:(NSString *) w andDetail:(NSString *) x andFilename:(NSString *) y andThumbnail:(NSString *) z;

-(id) initWithTitle:(NSString *) aTitle andDetail:(NSString *) aDetail andFilename:(NSString *) aFilename andThumbnail:(NSString *) aThumbnail {
   self = [[super alloc]init];
   self.title = aTitle;
   self.detail = aDetail;
   self.filename = aFilename;
   self.thumbnail = aThumbnail;
   return self;
}
-(id)initWithTitle:(NSString *)aTitle
            detail:(NSString *)aDetail
          filename:(NSString *)aFilename
         thumbnail:(NSString *)aThumbnail;

self.photo = initWithTitle: @"Mr. Higgie" 
                    detail: @"This is Higgie's profile picture" 
                  filename: @"higgie_profile_image.png" 
                 thumbnail: @"higgie_profile_image_thumbnail.png";




@implementation NumberHandler

- (NSNumber *) numberThatIsTwiceAsBigAsNumber:(NSNumber *)number {

    return @(2 * [number intValue]);
}

- (NSArray *) arrayOfNumbersBetweenNumber:(NSInteger)number andOtherNumber: (NSInteger)otherNumber {
    
    NSMutableArray *ary = [[NSMutableArray alloc] init];
    for (NSInteger x = number; x <= otherNumber; x++) {
        [ary addObject:@(x)];
    }
    return ary;
}

- (NSInteger) lowestNumberInArray:(NSArray *)arrayOfNumbers {

    long lowest = NSIntegerMax;
    for (int x = 0; x < [arrayOfNumbers count]; x++) {
        if ([arrayOfNumbers[x] integerValue] < lowest) {
            NSLog(@"number in array: %@", arrayOfNumbers[x]);
            lowest = [arrayOfNumbers[x] integerValue];
        }
    }
    return lowest;
}

@end


@implementation StarTrekArrays

- (NSArray *) arrayOfStarTrekCharactersFromString:(NSString *)characterString {
    
    NSArray *characters = [characterString componentsSeparatedByString:@";"];
    
    return characters;
}

- (NSString *) stringOfStarTrekCharactersFromArray:(NSArray *)characterArray {
    
    NSString *characters = [characterArray componentsJoinedByString:@";"];

    return characters;
}

- (NSArray *) alphabeticallySortedStarTrekCharactersFromArray:(NSArray *)characterArray {
    /* WORK HERE */
    //return @[];

    NSArray *sortedArray = [characterArray sortedArrayUsingSelector:@selector(compare:)];
    
    return sortedArray;
}

- (BOOL) characterArrayContainsWorf:(NSArray *)characterArray {

    BOOL found = NO;
    for (NSString *s in characterArray)
    {
        if ([s containsString:@"Worf"]) {
            found = YES;
            break;
        }
    }
    return found;;
    
}

@end


@implementation EqualityDeterminer

- (BOOL) string:(NSString *)string1 isTheSameAsString:(NSString *)string2 {
    BOOL equality = [string1 isEqualToString: string2];
    return equality;
}
@end


@implementation MarysAppleHandler

- (NSString *) itemMaryCanPurchaseForDollars:(NSInteger)dollars {

    NSString *itemToReturn;

    if (dollars <= 4) {
        itemToReturn = @"get out of my store";
    } else if (dollars == 5)
    {
        itemToReturn = @"have some gum";
    } else if (dollars == 6)
    {
        itemToReturn = @"have an apple";
    } else if (dollars == 1000000000)
    {
        itemToReturn = @"have The Big Apple";
    } else if (dollars >= 1000)
    {
        itemToReturn = @"have an Apple computer";
    }
    
    NSLog(@"For $%ld, Mary can: %@", (long)dollars, itemToReturn);
    return itemToReturn;
}

- (NSUInteger) dollarCostForAppleFlavoredVodka {
    NSUInteger originalCost = 24;
    NSUInteger cost = self.getsDiscount ? originalCost * .75 : originalCost;
    
    return cost;
}

@end