Search Results

Search found 61 results on 3 pages for 'nsrange'.

Page 2/3 | < Previous Page | 1 2 3  | Next Page >

  • strchr in objective C?

    - by Brian Postow
    I'm trying to write the equivalent of strchr, but with NSStrings... I've currently got this: Boolean nsstrchr(NSString* s, char c) { NSString *tmps = [NSString stringWithFormat: @"%c", c]; NSCharacterSet *cSet = [NSCharacterSet characterSetWithCharactersInString: tmps]; NSRange rg = [s rangeOfCharacterFromSet: cSet]; return rg.location != NSNotFound; } This seems needlessly complex... Is there a way to do this (preferably, one that doesn't involve turning the NSString into a cstring which doubles the run time, or writing it myself using characterAtIndex:... Am I missing some obvious method in the NSString description?

    Read the article

  • UISearch bar case sensitive off ? ? ?

    - by Flodev03
    hi all, in a table view i have set a UISearchBar set the delegate and add the protocol. When user tap a word everything is ok exept that the search of "tennis" and "Tennis" is not the same. How can i make the search bar a non case sensitive UISearchBar, i have search a lot please help it would be great thanks to all here is my code where i think evrything happens : thanks to all !!!! - (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText { [tableData removeAllObjects];// remove all data that belongs to previous search if([searchText isEqualToString:@""]||searchText==nil){ [myTableView reloadData]; return; } NSInteger counter = 0; for(NSString *name in dataSource) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc]init]; NSRange r = [name rangeOfString:searchText]; if(r.location != NSNotFound) [tableData addObject:name]; counter++; [pool release]; } [myTableView reloadData]; }

    Read the article

  • Capture Backspace , is this a OK solution?

    - by f0rz
    Hello, I having a hard time to capture the backspace button in a UITextView. I am trying to capture it in the method - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text I thought it was ok to do like this. if([text isEqualToString:@"\b") { // code ... } But for some reason, when backspace is pressed 'text' is empty. I know I can compare lenght of the UITextView but it isnt what I want to achieve. So I found a solution to this. If I look at '[text lenght]' every key on the defaultkeyboard returns 0 . Every key excepts the backspace wich is 0. In that way i know when backspace is pressed. I do this check. if([text lenght] == 0) { // BACKSPACE PRESSED   } What is your opinion about this? -or can I do it in a better way? Regards. - Martin

    Read the article

  • Getting the Value of a UITextField as keystrokes are entered?

    - by Nocturne
    Let's say I have the following code: IBOutlet UITextField* nameTextField; IBOutlet UILabel* greetingLabel; I'd like the greetingLabel to read "Hello [nameTextField]" as soon as the user presses any key. What I need basically is the iPhone equivalent of the Cocoa delegate method -controlTextDidChange: The -textField:shouldChangeCharactersInRange: delegate method is called each time a keystroke occurs: - (BOOL) textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string The string argument returns the character that is pressed. The actual textField's value (nameTextField.text) remains blank however. What am I missing here? (I'd like nameTextField to reflect the exact string that the user has entered so far)

    Read the article

  • How to detect when UITextField become empty

    - by Jakub
    Hello, I would like to perform a certain action when UITextField becomes empty (user deletes everything one sign after another or uses the clear option). I thought about using two methods - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string; and - (BOOL)textFieldShouldClear:(UITextField *)textField; from UITextFieldDelegate I'm not sure how to detect the situation when the text field becomes empty? I tried with: if ([textField.text length] == 0) but it does't work as the fisrt of the above methods is called before the sign is deleted from the text field. Any ideas?

    Read the article

  • Xcode iphone sdk - Searching in UITableView, different pattern matching

    - by Lorenzo
    Hi everyone, I'm coding a UITableView with a UISearchBar to search between a list of cities (loaded in the uitableview) Here is my code for searhing: - (void) searchTableView { NSString *searchText = searchBar.text; NSMutableArray *searchArray = [[NSMutableArray alloc] init]; for (NSDictionary *dictionary in listOfItems) { NSArray *array = [dictionary objectForKey:@"Cities"]; [searchArray addObjectsFromArray:array]; } for (NSString *sTemp in searchArray) { NSRange titleResultsRange = [sTemp rangeOfString:searchText options:NSCaseInsensitiveSearch]; if (titleResultsRange.length > 0) [copyListOfItems addObject:sTemp]; } [searchArray release]; searchArray = nil;} And with this everything works fine, but i need to do something a bit different. I need to search only between items that match pattern Word* and not * Word *. For example if I search "roma", this need to match just with "Roma" or "Romania" and not with "Castelli di Roma". Is that possible with this searchbar? How can i modify this? Thanks

    Read the article

  • Format Text Field While User Enters Data

    - by Matt
    Hello, so here is what I am trying to do. I have a birth date text field, while the user in puts text i want the field to automatically put it in the form YYYY-MM-DD. Basically while the user types it replaces the Y's M's and D's but leaves the hyphen. I am not sure how to go about this i may need a mask or something. I know this is where some of the formatting can be done - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{ Any help would be of much help

    Read the article

  • highlight scrolling text on iphone(about lyrics show )

    - by ????
    hi all, i'm in troubled show lyrics .i use uitextview show lyrics code snips IBOutlet UILabel *lrcshow; IBOutlet UITextView *showlrc; self.lrcshow.text = [lrcDictss objectForKey:[NSString stringWithFormat:@"%d",(int)self.player.currentTime]]; if (self.lrcshow.text!=nil) { NSRange selection = [self.showlrc.text rangeOfString:self.lrcshow.text]; if( selection.location != NSNotFound ) { showlrc.selectedRange = selection; } } lyrics line by line scrolling show,the problem is now playing(selectedRange) lyric is not highlight, i want this line highlight how can i code ? any suggestion?or use calayer ?cgcontext quartz core instead it? how can i code ? ps.use uitextview show is rigidly ,not smooth! lr style show pic url this is my app style: http://www.flickr.com/photos/53054715@N05/5359722887/ this is good style: flickr.com/photos/53054715@N05/5360345226/

    Read the article

  • textview.selectedRange.location in UITextview show 2147483647

    - by Risma
    hi i have a textview and i want to get the selectedRange.location value from that textview. in the first time when the keyboard appear, the location value always show an integer point such as 110, or others. But if i dissappear the keyboard and then appear the keyboard again, the location value always show 2147483647. What is this 2147483647 mean and how to get the real location value? This is my code in the keyboard will appear method : -(void)keyboardWillAppear:(NSNotification *)notification { [UIView beginAnimations:nil context:NULL]; [UIView setAnimationDuration:[[[notification userInfo] objectForKey:UIKeyboardAnimationDurationUserInfoKey] doubleValue]]; CGRect keyboardEndingUncorrectedFrame = [[[notification userInfo] objectForKey:UIKeyboardFrameEndUserInfoKey ] CGRectValue]; CGRect keyboardEndingFrame = [self.view convertRect:keyboardEndingUncorrectedFrame fromView:nil]; [UIView commitAnimations]; NSRange selectedRange = textview.selectedRange; NSLog(@"selected Range location : %f", selectedRange.location); }

    Read the article

  • shouldStartLoadWithRequest is not called when using AJAX/XMLHttpRequest

    - by el_migu_el
    Hi, I am trying to send method invocations from JavaScript to Objective-C and vice versa. Everything works fine for window.location triggered urls, which are catched by shouldStartLoadWithRequest. Now if I try to use an AJAX call instead, shouldStartLoadWithRequest is not called. Is there a way to do this? Mainly I do not want to be restricted to the max URL size on data that can be passed from JavaScript to Objective-C. My UIWebViewDelegate implements: - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { NSString *url = [[request URL] absoluteString]; NSRange urlrange = [url rangeOfString:@"myScheme://"]; if(urlrange.length > 0){ NSLog(@"this is an objective-c call, do not load link: %@", [url substringWithRange:NSMakeRange(urlrange.location, [url length])] ); return NO; } else { NSLog(@"not an objective-c call, load link: ", url ); return YES; } } My JavaScript calls: // works window.location.href = "myScheme://readyHref"; // fails var xmlHttpReq = false; if (window.XMLHttpRequest) { xmlHttpReq = new XMLHttpRequest(); } else if (window.ActiveXObject) { xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP"); } xmlHttpReq.open('GET', "myScheme://readyAJAX", false); xmlHttpReq.send();

    Read the article

  • NSTextField autocomplete

    - by Rasmus Styrk
    Does anyone know of any class or lib that can implement autocompletion to an NSTextField? I'am trying to get the standard autocmpletion to work but it is made as a synchronous api. I get my autocompletion words via an api call over the internet. What have i done so far is: - (void)controlTextDidChange:(NSNotification *)obj { if([obj object] == self.searchField) { [self.spinner startAnimation:nil]; [self.wordcompletionStore completeString:self.searchField.stringValue]; if(self.doingAutocomplete) return; else { self.doingAutocomplete = YES; [[[obj userInfo] objectForKey:@"NSFieldEditor"] complete:nil]; } } } When my store is done, i have a delegate that gets called: - (void) completionStore:(WordcompletionStore *)store didFinishWithWords:(NSArray *)arrayOfWords { [self.spinner stopAnimation:nil]; self.completions = arrayOfWords; self.doingAutocomplete = NO; } The code that returns the completion list to the nstextfield is: - (NSArray *)control:(NSControl *)control textView:(NSTextView *)textView completions:(NSArray *)words forPartialWordRange:(NSRange)charRange indexOfSelectedItem:(NSInteger *)index { *index = -1; return self.completions; } My problem is that this will always be 1 request behind and the completion list only shows on every 2nd char the user inputs. I have tried searching google and SO like a mad man but i cant seem to find any solutions.. Any help is much appreciated.

    Read the article

  • iPhone SDK - (void)viewDidLoad { } - Show Progress

    - by Hank Brekke
    I have a long - (void)viewDidLoad { } function that uses the internet to load a page, and whenever the application loads the URL, the screen is black. I have a UIActivityIndicator setup to show that the address is loading, but I don't know how to prevent it from seeming as if the application is not responding, and I don't want to show the network activity indicator [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES]; because the screen will still be black, just with a loader in the top corner. My code is below: - (void)viewDidLoad { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; email.text = [defaults objectForKey:@"mom_email"]; pass.text = [defaults objectForKey:@"mom_pass"]; if (email.text != nil && pass.text != nil) { [self login:loginBtn]; } } - (IBAction)login:(id)sender { [email resignFirstResponder]; [pass resignFirstResponder]; [loader startAnimating]; // Does nothing though NSString *em = (NSString *)CFURLCreateStringByAddingPercentEscapes(NULL,(CFStringRef)email.text,NULL,(CFStringRef)@"!*'();:@&=+$,/?%#[]",kCFStringEncodingUTF8); NSString *ps = (NSString *)CFURLCreateStringByAddingPercentEscapes(NULL,(CFStringRef)pass.text,NULL,(CFStringRef)@"!*'();:@&=+$,/?%#[]",kCFStringEncodingUTF8); NSURL *url = [[NSURL alloc] initWithScheme:@"http" host:@"localhost" path:[[NSString alloc] initWithFormat:@"/app/login.php?email=%@&pass=%@", em, ps]]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil]; NSString *loginResult = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding]; [loader stopAnimating]; NSRange range = [loginResult rangeOfString:@"1"]; if (range.location != NSNotFound) { [self dismissModalViewControllerAnimated:YES]; // Doesn't do anything if function called from viewDidLoad } }

    Read the article

  • cells order changes in UITableView after reloadSections: method

    - by user304895
    I'm having a problem using a grouped UITableView, and after 3 days of searching, I didn't found the solution... Actually, I have a Grouped table, composed of two sections : The first section contains a UISegmentedControl with three buttons : button0, button1 and button2. When clicking on the button0, I want to show two cells in the second section, with embedded UITextField in each cell. When clicking on the button1, I want to show one cell in the second section with an embedded UITextField. When clicking on the button2, I have to show the camera in ModalView (I think it will be ok). I've also put placeholders in each UITextField. Each time a button is clicked, I call a pickOne: method in order to update my view. In this method, I construct a NSIndexSet with NSRange of (1, 1), and then I call the reloadSections: method from the UITableViewController with NSIndexSet as a parameter. When the view appears for the first time, everything is ok, but when I click many times on the buttons, the order of the cells changes (cells containing the two textFields for the button0), and the new placeHolders are written over the old ones. Even more, sometimes when I click on the button0, it shows me only the second cell... Do you have any idea ? or need some code ? Thank you :)

    Read the article

  • Stop UITextView from jumping when programatically setting text

    - by Michael Waterfall
    Hi there, I have to update a small amount of text in a scrolling UITextView. I'll only be inserting a character where the cursor currently is, and I'll be doing this on a press of a button on my navigation bar. My problem is that whenever I call the setText method of the text view, it jumps to the bottom of the text. I've tried using contentOffset and resetting the selectedRange but it doesn't work! Here's my example: // Remember offset and selection CGPoint contentOffset = [entryTextView contentOffset]; NSRange selectedRange = [entryTextView selectedRange]; // Update text entryTextView.text = entryTextView.text; // Try and reset offset and selection [entryTextView setContentOffset:contentOffset animated:NO]; [entryTextView setSelectedRange: selectedRange]; Is there any way you can update the text without any scroll movement at all... as if they'd just typed something on the keyboard? Many thanks, Michael Edit: I've tried using the textViewDidChange: delegate method but it's still not scrolling up to the original location. - (void)textViewDidChange:(UITextView *)textView { if (self.programChanged) { [textView setSelectedRange:self.selectedRange]; [textView setContentOffset:self.contentOffset animated:NO]; self.programChanged = NO; } } - (void)changeButtonPressed:(id)sender { // Remember position self.programChanged = YES; self.contentOffset = [entryTextView contentOffset]; self.selectedRange = [entryTextView selectedRange]; // Update text entryTextView.text = entryTextView.text; }

    Read the article

  • obj-c problem setting array with componentsSeperatedByString

    - by Brodie4598
    I have a data source with about 2000 lines that look like the following: 6712,Anaktuvuk Pass Airport,Anaktuvuk Pass,United States,AKP,PAKP,68.1336,-151.743,2103,-9,A What I am interested in is the 6th section of this string so I want to turn it into an array, then i want to check the 6th section [5] for an occurrance of that string "PAKP" Code: NSBundle *bundle = [NSBundle mainBundle]; NSString *airportsPath = [bundle pathForResource:@"airports" ofType:@"dat"]; NSData *data = [NSData dataWithContentsOfFile:airportsPath]; NSString *dataString = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease]; NSArray *dataArray = [dataString componentsSeparatedByString:@"\n"]; NSRange locationOfAirport; NSString *workingString = [[NSString alloc]initWithFormat:@""]; NSString *searchedAirport = [[NSString alloc]initWithFormat:@""]; NSString *airportData = [[NSString alloc]initWithFormat:@""]; int d; for (d=0; d < [dataArray count]; d=d+1) { workingString = [dataArray objectAtIndex:d]; testTextBox = workingString; //works correctly NSArray *workingArray = [workingString componentsSeparatedByString:@","]; testTextBox2 = [workingArray objectAtIndex: 0]; //correctly displays the first section "6712" testTextBox3 = [workingArray objectAtIndex:1] //throws exception index beyond bounds locationOfAirport = [[workingArray objectAtIndex:5] rangeOfString:@"PAKP"]; } the problem is that when the workingArray populates, it only populates with a single object (the first component of the string which is "6712". If i have it display the workingString, it correctly displays the entire string, but for some reason, it isn't correctly making the array using the commas. i tried it without using the data file and it worked fine, so the problem comes from how I am importing the data. ideas?

    Read the article

  • Help creating a predicate for use with filteredArrayUsingPredicate

    - by johnbdh
    I am trying to learn how to use predicates and so am trying to replace the following working code with filteredArrayUsingPredicate... [filteredLocations removeAllObjects]; for (NSString *location in locations) { NSRange range = [location rangeOfString:query options:NSCaseInsensitiveSearch]; if (range.length > 0) { [filteredLocations addObject:location]; } } Instead I am trying.... [filteredLocations removeAllObjects]; NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF contains %@", searchText]; [filteredLocations addObjectsFromArray: [locations filteredArrayUsingPredicate:predicate]]; I am not getting the same results with the predicate as I am with for loop rangeOfString. With the range of string for example searchText returns an 8 item array while with the same value returns only 2 with the predicate. Another example, hono will find honolulu in the locations array while it will not find anything using the predicate. As I understand it SELF represents the object object being evaluated ie. the locations array, so I think that is the correct syntax. Any help would be appreciated Thanks, John

    Read the article

  • Applescript from Mac App says "Expected end of line but found \U201c\"\U201d."

    - by Rasmus Styrk
    I am trying to perform a copy/paste for my to the the last active app, here's my code: NSString *appleScriptSource = [NSString stringWithFormat:@"\ntell application \"%@\" to activate\ntell application \"System Events\" to tell process \"%@\"\nkeystroke \"v\" using command down\nend tell", [lastApp localizedName], [lastApp localizedName]]; NSDictionary *error; NSAppleScript *aScript = [[NSAppleScript alloc] initWithSource:appleScriptSource]; NSAppleEventDescriptor *aDescriptor = [aScript executeAndReturnError:&error]; The problem is that on some computers it works just fine, but on others it fails. My error output from error that is returned by executeAndReturnError is: 2012-06-13 17:43:19.875 Mini Translator[1206:303] (null) (error: { NSAppleScriptErrorBriefMessage = "Expected end of line but found \U201c\"\U201d."; NSAppleScriptErrorMessage = "Expected end of line but found \U201c\"\U201d."; NSAppleScriptErrorNumber = "-2741"; NSAppleScriptErrorRange = "NSRange: {95, 1}"; }) I can't seem to figure out what it means or why it happens. We tried copying the generated apple-script code into the Apple Script editor, and here it works just fine. My App is sandboxed - i have added the bundle identifiers for the key "com.apple.security.temporary-exception.apple-events" for the apps i want to support. Any suggestions?

    Read the article

  • iPhone/iPad : Check for invalid characters in a textbox made for Integers only

    - by JustinXXVII
    I noticed that the iPhone OS is pretty good about picking out Integer values when asked to. Specifically, if you use NSString *stringName = @"6("; int number = [stringName intValue]; the iPhone OS will pick out the 6 and turn the variable number into 6. However, in more complex mistypes, this also makes the int variable 6: NSString *stringName = @"6(5"; int number = [stringName intValue]; The iPhone OS misses the other digit, when what could have possibly been the user trying to enter the number 65, the OS only gets the number 6 out of it. I need a solution to check a string for invalid characters and return NO if there is anything other than an unsigned integer in a textbox. This is for iPad, and currently there is no numeric keyboard like the iPhone has, and I'm instead limited to the standard 123 keyboard. I was thinking that I need to use NSRange and somehow loop through the entire string in the textbox, and checking to see if the current character in the iteration is a number. I'm lost as far as that goes. I can think of testing it against zero, but zero is a valid integer. Can anyone help?

    Read the article

  • NSCFArray leak in the NSMutablearray allocation

    - by Srilakshmi Manthena
    Hi, I am getting the leak at this allocation filteredListContent = [[NSMutableArray alloc] initWithCapacity: [showList count]]; CODE: -(void)reloadTable { EventListAppDelegate *appDelegate = (EventListAppDelegate *)[[UIApplication sharedApplication] delegate]; contactList = [appDelegate getAllContactsList]; inviteeList = [appDelegate getInviteeListForEvent:event.primaryKey]; if (isInvited == YES) { showList=[appDelegate getInviteeListForEvent:event.primaryKey]; } else { showList =[appDelegate getAllContactsList]; } filteredListContent = [[NSMutableArray alloc] initWithCapacity: [showList count]]; [filteredListContent addObjectsFromArray: showList]; [self organizeContactItemsIntoIndexes]; self.title = [event.name capitalizedString]; [self getToolbar]; [theTableView reloadData]; } (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText { [filteredListContent removeAllObjects]; ContactDTO *currentElement; NSRange range; for (currentElement in showList) { range = [currentElement.lastName rangeOfString:searchText options:NSCaseInsensitiveSearch]; if(range.location==0) { [filteredListContent addObject:currentElement]; } } [self organizeContactItemsIntoIndexes]; [theTableView reloadData]; } (void)dealloc { [filteredListContent release]; [super dealloc]; }

    Read the article

  • Leaks in passing the request using URL at NSString, Objective-C.

    - by Madan Mohan
    Hi Guys, I getting the leak in this method even the allocated nsstring is released. -(BOOL)getTicket:(NSString*)userName passWord:(NSString*)aPassword isLogin:(BOOL)isLogin { login =[self getloginList]; username = login.name; password = login.password; NSString* str=@""; if (isLogin == YES) { str = @"https://accounts.=true&LOGIN_ID="; str = [str stringByAppendingString:[self _encodeString:username]]; str = [str stringByAppendingString:@"&PASSWORD="]; str = [str stringByAppendingString:[self _encodeString:password]]; } else if (isLogin == NO) { str = @"https://accounts.=true&LOGIN_ID="; str = [str stringByAppendingString:[self _encodeString:userName]]; str = [str stringByAppendingString:@"&PASSWORD="]; str = [str stringByAppendingString: [self _encodeString:aPassword]]; } NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:str] cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:25.0]; [request setHTTPMethod: @"POST"]; NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];//****************** i am getting leak here showing as nsstring is leaking NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding]; printf("\n returnString in getticket:%s",[returnString UTF8String]); NSRange textRange; textRange =[returnString rangeOfString:@"TICKET"]; if(textRange.location != NSNotFound) { printf("\n **********************"); NSArray* splitValues = [returnString componentsSeparatedByString:@"TICKET="]; NSString* str1 = [splitValues objectAtIndex:1]; NSArray* splitValues1 = [str1 componentsSeparatedByString:@"RESULT"]; NSString* ticket1 = [splitValues1 objectAtIndex:0]; self.ticket = ticket1; self.isCorrectLogin = YES; [returnString release]; return YES; } else { self.isCorrectLogin = NO; [returnString release]; return NO; } return NO; } Please help me out of this problem.

    Read the article

  • Help with a loop to return UIImage from possible matches

    - by Canada Dev
    I am parsing a list of locations and would like to return a UIImage with a flag based on these locations. I have a string with the location. This can be many different locations and I would like to search this string for possible matches in an NSArray, and when there's a match, it should find the appropriate filename in an NSDictionary. Here's an example of the NSDictionary and NSArray: NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys: @"franceFlag", @"france", @"greeceFlag", @"greece", @"spainFlag", @"spain", @"norwayFlag", @"norway", nil]; NSArray *array = [NSArray arrayWithObjects: @"france" @"greece" @"spain" @"portugal" @"ireland" @"norway", nil]; Obviously I'll have a lot more countries and flags in both. Here's what I have got to so far: -(UIImage *)flagFromOrigin:(NSString *)locationString { NSRange range; for (NSString *arrayString in countryArray) { range = [locationString rangeOfString:arrayString]; if (range.location != NSNotFound) { return [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:[dictionary objectForKey: arrayString] ofType:@"png"]]; } } return nil; } Now, the above doesn't actually work. I am missing something (and perhaps not even doing it right in the first place) The issue is, the locationString could have several locations in the same country, described something like this "Barcelona, Spain", "Madrid, Spain", "North Spain", etc., but I just want to retrieve "Spain" in this case. (Also, notice caps for each country). Basically, I want to search the locationString I pass into the method for a possible match with one of the countries listed in the NSArray. If/When one is found, it should continue into the NSDictionary and grab the appropriate flag based on the correct matched string from the array. I believe the best way would then to take the string from the array, as this would be a stripped-out version of the location. Any help to point me in the right direction for the last bit is greatly appreciated.

    Read the article

  • How can I optimize this loop?

    - by Moshe
    I've got a piece of code that returns a super-long string that represents "search results". Each result is represented by a double HTML break symbol. For example: Result1<br><br>Result 2<br><br>Result3 I've got the following loop that takes each result and puts it into an array, stripping out the break indicator, "kBreakIndicator" (<br><br>). The problem is that this lopp takes way too long to execute. With a few results it's fine, but once you hit a hundred results, it's about 20-30 seconds slower. It's unacceptable performance. What can I do to improve performance? Here's my code: content is the original NSString. NSMutableArray *results = [[NSMutableArray alloc] init]; //Loop through the string of results and take each result and put it into an array while(![content isEqualToString:@""]){ NSRange rangeOfResult = [content rangeOfString:kBreakIndicator]; NSString *temp = (rangeOfResult.location != NSNotFound) ? [content substringToIndex:rangeOfResult.location] : nil; if (temp) { [results addObject:temp]; content = [[[content stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@"%@%@", temp, kBreakIndicator] withString:@""] mutableCopy] autorelease]; }else{ [results addObject:[content description]]; content = [[@"" mutableCopy] autorelease]; } } //Do something with the results array. [results release];

    Read the article

  • UIsearch bar not returning data to table

    - by Insane_Poyo
    Edited code - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Cell"; UITableViewCell *cell = [self.tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell==nil) cell=[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; if (isFiltered) { int rowCount=indexPath.row; Aves *filtrada=[filteredTableData objectAtIndex:rowCount]; cell.textLabel.text=filtrada.name; NSLog(@"mostrando: "); }else { int rowCounter=indexPath.row; Aves *author=[theauthors objectAtIndex:rowCounter]; cell.textLabel.text=author.name; } NSLog(@"mostrando: "); return cell; } -(void)searchBar:(UISearchBar*)searchBar textDidChange:(NSString*)text { if(text.length == 0) { isFiltered = FALSE; } else { isFiltered = true; int i; [filteredTableData removeAllObjects]; for(i=0;[theauthors count]>i;i++) { Aves *name=[theauthors objectAtIndex:i]; //NSLog(name.name); NSRange nameRange = [[name.name lowercaseString] rangeOfString:[text lowercaseString]]; if(nameRange.length>0) { [filteredTableData addObject:name]; NSLog(name.name); } } [self.tableView performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:NO]; } } Edit: After working on it a while I solved some problems.Just updated my code, the problem is the repaint of the tableView, every thing else go ok. Check it and give any ideas you have plz ^^ Thx again for your time.

    Read the article

  • iPad search bar bad memory access?

    - by Geoff Baum
    Hello all, So I am trying to implement a search bar in my app and am very close but can't seem to figure out where this memory error is occurring. This is what part of my search method looks like: filters = [[NSMutableArray alloc] init]; NSString *searchText = detailSearch.text; NSMutableArray *searchArray = [[NSMutableArray alloc] init]; // Normally holds the object (ex: 70 locations) searchArray = self.copyOfFilters ; //This is the line that is breaking after ~2-3 letters are entered in the search for (NSString *sTemp in searchArray) { NSRange titleResultsRange = [sTemp rangeOfString:searchText options:NSCaseInsensitiveSearch]; if (titleResultsRange.length > 0) [filters addObject:sTemp]; } displayedFilters = filters; copyOfFilters is a deep copy of the displayed filters that appear when the view first loads via: self.copyOfFilters = [[NSMutableArray alloc] initWithArray:displayedFilters copyItems:YES]; I have traced through the entry of letters and it is accurate after 2 letters, but once you try and enter a letter after a space in the search bar, it crashes. The value of copyOfFilters = {(int)[$VAR count]} objects. Does anyone know what may be causing this? Thanks!

    Read the article

  • Objective-c - How to serialize audio file into small packets that can be played?

    - by vfn
    Hi there, So, I would like to get a sound file and convert it in packets, and send it to another computer. I would like that the other computer be able to play the packets as they arrive. I am using AVAudioPlayer to try to play this packets, but I couldn't find a proper way to serialize the data on the peer1 that the peer2 can play. The scenario is, peer1 has a audio file, split the audio file in many small packets, put them on a NSData and send them to peer2. Peer 2 receive the packets and play one by one, as they arrive. Does anyone have know how to do this? or even if it is possible? EDIT: Here it is some piece of code to illustrate what I would like to achieve. // This code is part of the peer1, the one who sends the data - (void)sendData { int packetId = 0; NSString *soundFilePath = [[NSBundle mainBundle] pathForResource:@"myAudioFile" ofType:@"wav"]; NSData *soundData = [[NSData alloc] initWithContentsOfFile:soundFilePath]; NSMutableArray *arraySoundData = [[NSMutableArray alloc] init]; // Spliting the audio in 2 pieces // This is only an illustration // The idea is to split the data into multiple pieces // dependin on the size of the file to be sent NSRange soundRange; soundRange.length = [soundData length]/2; soundRange.location = 0; [arraySoundData addObject:[soundData subdataWithRange:soundRange]]; soundRange.length = [soundData length]/2; soundRange.location = [soundData length]/2; [arraySoundData addObject:[soundData subdataWithRange:soundRange]]; for (int i=0; i // This is the code on peer2 that would receive an play the piece of audio on each packet - (void) receiveData:(NSData *)data { NSKeyedUnarchiver* unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data]; if ([unarchiver containsValueForKey:PACKET_ID]) NSLog(@"DECODED PACKET_ID: %i", [unarchiver decodeIntForKey:PACKET_ID]); if ([unarchiver containsValueForKey:PACKET_SOUND_DATA]) { NSLog(@"DECODED sound"); NSData *sound = (NSData *)[unarchiver decodeObjectForKey:PACKET_SOUND_DATA]; if (sound == nil) { NSLog(@"sound is nil!"); } else { NSLog(@"sound is not nil!"); AVAudioPlayer *audioPlayer = [AVAudioPlayer alloc]; if ([audioPlayer initWithData:sound error:nil]) { [audioPlayer prepareToPlay]; [audioPlayer play]; } else { [audioPlayer release]; NSLog(@"Player couldn't load data"); } } } [unarchiver release]; } So, here is what I am trying to achieve...so, what I really need to know is how to create the packets, so peer2 can play the audio. It would be a kind of streaming. Yes, for now I am not worried about the order that the packet are received or played...I only need to get the sound sliced and them be able to play each piece, each slice, without need to wait for the whole file be received by peer2. Thanks!

    Read the article

< Previous Page | 1 2 3  | Next Page >