iPhone Dev = térképek és szüntesse kommentárok

szavazat
0

Én sikeresen rajz jelölések segítségével térképre tömb kommentárokat. Azt is kattintson a kommentár és változtassa meg a színét vagy a kép. Saját probléma merül fel, amikor a használata kiválasztja a második kommentár, és azt szeretné dinamikusan változtatni a színét vagy a kép az első egy vissza nem kiválasztott szín / kép. Tudok a tömb összes kommentárok és a munka révén a tömbben, de egyszer megpróbálom a szín vagy kép ot a tömb kapok egy hasonló hiba.

for (MKAnnotationView *ann in map.selectedAnnotations){ 
  if ([ann isMemberOfClass:[Place class]]) { 
    place = (Place *)ann; 
      if (currentPlaceID != place.placeID) { 
        UIImage *i = [UIImage imageNamed:@pin.png];
        ann.image = i; 
      }
}

A fenti kód működik rendben, amíg nem kap ann.image = i; akkor a hibákat. A hibák kapok a következők: -

  • - [Hely setImage:]: ismeretlen választó küldött fokon 0x4514370 lezáró alkalmazás miatt nem kapott kivétel „NSInvalidArgumentException”, ok: „** - [Hely setImage:]: ismeretlen választó küldött példány 0x4514370”

Kérjük, jelezze, mint én már megy körbe-körbe ebben egyet 2 napig most !!!!

Van ötleted, hogyan lehet a legjobban csinálni?

előre is köszönöm

A kérdést 29/10/2009 13:58
a forrás felhasználó
Más nyelveken...                            


2 válasz

szavazat
0

Végre rájöttem, hogyan kell ezt csinálni. Mint általában ez nem olyan nehéz, ha tudod, hogyan. Csak gondoltam át ezt.

- (void)setSelected:(BOOL)selected animated:(BOOL)animated
  {
    [super setSelected:selected animated:animated];
    NSLog(@"here I am in set selected");
    if (YES == selected)
    {
       NSLog(@"I am selected");
    }
    else 
   {
     self.backgroundColor = [UIColor clearColor];
      NSLog(@"not selected");
    }
  }
Válaszolt 29/10/2009 20:23
a forrás felhasználó

szavazat
0

Van egy ingatlan az osztály Place nevű image?

Olyasmi, mint ... @property (nonatomic, retain) UIImage* image;és rendesen szintetizált? @synthesize image;?

A hiba elég egyenesen előre, néhány tárgyat kap egy üzenetet, hogy nem reagál a, vagyis a „setImage”, amely által hivatkozott .image.

Itt a kód:

1. for (MKAnnotationView *ann in map.selectedAnnotations) {
2.    if ([ann isMemberOfClass:[Place class]]) {
3.        place = (Place *)ann;
4.        if (currentPlaceID != place.placeID) {
5.           UIImage *i = [UIImage imageNamed:@"pin.png"];
6.           ann.image = i;
7.        }
8.    }
9. }

Mit látok:

  • Ann egy MKAnnotationView (a map.selectedAnnotations)
  • Ön typecasting kommentár egy helyre 3. sor (lehet ezt a jogot? Vajon Place alosztály MKAnnotationView?)
  • Ön megfelelő beállításával a kép kommentár

Mit jelent:

  • Ha Place valóban egy alosztálya MKAnnotationView, elrejtette a setImage (valahogy) módszer
  • Ha a hely nem egy alosztálya MKAnnotationView, felvett egy érvénytelen kommentár a kommentárok (biztos), hogy akarsz kezelni, mint egy kommentár.
Válaszolt 29/10/2009 14:05
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more