Pytanie, jak uzyskać dane z plisty i jak powinien wyglądać układ
Jest to kolejne pytanie dotyczące moich pierwszych pytań dotyczących pobierania danych na plist. W tej chwili udało mi się wykryć dotyk użytkowników dokonany na moim widoku za pomocą losowego wywołania obrazu (dzięki phytonquick).
CGPoint currentTouchLocation = [currentTouch locationInView:self];
Mam teraz problem z porównaniem wartości uzyskanej od użytkowników na losowym obrazie w stosunku do tego, który został zapisany wewnątrz danych plist o tej samej nazwie, co losowy obraz, którego dotyka użytkownik. Wiem, jak obliczyć odległość dotyku, abym mógł dostosować punkty wytrzymałości.
-(CGFloat) distanceBetween: (CGPoint) point1 and: (CGPoint)point2
NSMutableDictionary *????? = [self loadDictionaryFromPList: @"?????"];
NSNumber *1stXCoordinate = [????? objectForKey:@"1stXCoordinate"];
NSNumber *1stYCoordinate = [????? objectForKey:@"1stYCoordinate"];
if (1stXCoordinate && 1stYCoordinate)
{
CGPoint 1stTouchLocation = CGPointMake([lastXCoordinate floatValue], [lastYCoordinate floatValue]);
CGFloat distanceBetweenTouches = [self distanceBetween: currentTouchLocation and: 1stTouchLocation];
if (distanceBetweenTouches < 20)
{
// do something here
NSLog(@"You hit it.");
}
}
Również nie wiem, jak powinienem skonstruować moje dane plist. Przeczytałem kilka książek z próbką (np. „Iphone 3 dev”), ale nie mogę tego zrozumieć, gdy większość próbek, które widziałem, służy celom poglądowym. Tak układam moją plist:
randImage <-- callout array
p1.jpg <-- image represented by array
tap1 <-- Array
item 1 - x1 coordinate <-- Number
item 2 - y1 coordinate <-- Number
item 3 - x2 coordinate <-- Number
item 4 - y2 coordinate <-- Number
item 5 - x3 coordinate <-- Number
item 6 - y3 coordinate <-- Number
tap2 <-- Array
item 1 - x1 coordinate <-- Number
item 2 - y1 coordinate <-- Number
item 3 - x2 coordinate <-- Number
item 4 - y2 coordinate <-- Number
p2.jpg <-- image represented by array
tap1
item 1....etc
Czy ktoś mógłby skierować mnie na właściwą ścieżkę, jak powinienem to zrobić. Dziękuję Ci.