2009-04-20 8 views
1

J'utilise une vue de table dans laquelle chaque vente a un numéro de téléphone particulier le long d'un bouton d'appel sur appuyant sur lequel le numéro est composé ... Par exemple si j'ai un numéro de téléphone dans la cellule comme (4225821-1300 je l'ai changé dans le format standard 425-821-1300 par le code comme indiqué ci-dessous en utilisant la variable de chaîne phonenumberstringComment composer un numéro en appuyant sur un bouton d'appel dans une application iPhone?

phonenumberstring=[phonenumberstring substringFromIndex:1]; 
    phonenumberstring=[phonenumberstring stringByReplacingOccurrencesOfString:@")" withString:@"-"]; 

    m_strPhoneNumber = [NSString stringWithFormat:@"tel:%@", self.phonenumberstring]; 
//[[UIApplication sharedApplication] openURL:[NSURL URLWithString:m_strPhoneNumber]]; 
    NSURL *url = [[NSURL alloc] initWithString:m_strPhoneNumber];//1 
    [[UIApplication sharedApplication] openURL:url];//2 

la chose utilise quand je debug à lignes commentées 1 & 2 URL apparaît Nill et la n'a pas été composé

Cordialement

Arun

Répondre

2

Quelle est la valeur de m_strPhoneNumber et de phonenumberstring à ce point. Le phonenumberstring est-il réglé correctement?

Pour supprimer la première parenthèse, pourquoi ne pas utiliser stringByReplacingOccurrencesOfString:@"(" withString: @ "" etc. Cela semblerait moins cassant. En fait, je suggérerais de supprimer tous les caractères non numériques - même les traits d'union.

Il est probablement exagéré, mais il faut essayer quelque chose comme: Comme un petit style

m_strPhoneNumber = [NSMutableString stringWithString:@"tel:%@"]; 
NSArray *numberTokens = [phonenumberstring componentsSeparatedByCharactersInSet:[[NSCharacterSet decimalDigitCharacterSet] invertedSet]]; 
      for (NSString *token in numberTokens) { 
       m_strPhoneNumber = [m_strPhoneNumber stringByAppendingString:token]; 
      } 

côté, je suggère phoneNumberString est plus lisible. Je recommanderais également d'utiliser plus de variables - l'optimiseur s'assurera qu'elles n'ont pas d'impact et facilitera le débogage.

+0

Salut Roger Merci pour vos help..Yes je reçois la valeur correcte du numéro de téléphone en fonction de la cellule i sélectionné m_strPhoneNumber est au format @ « tel: 412-356-8900 » .. mais pendant le débogage la valeur à url est nill ... S'il vous plaît aider ... juste ce problème restant dans mon application !! Cordialement Arun – Arun

+0

Semble bizarre. J'ai ajouté du code pour enlever tout sauf les numéros de votre phonenumberstring - essayez ça. –

+0

Salut à nouveau ... désolé je dint remarquez le code envoyé ... mais je l'ai essayé ... mais encore une fois dans NSURL * url, la valeur de l'URL est affichée "nill" tout en déboguant cette partie du code .. je pense à moins et jusqu'à ce que le doesnt valeur url indique que le numéro de téléphone sélectionné l'appel ne sera pas lancé ... aider à nouveau? merci vraiment pour les réponses – Arun

Questions connexes