Search Results

Search found 12101 results on 485 pages for 'objective c runtime'.

Page 217/485 | < Previous Page | 213 214 215 216 217 218 219 220 221 222 223 224  | Next Page >

  • How to debug KVO

    - by user8472
    In my program I use KVO manually to observe changes to values of object properties. I receive an EXC_BAD_ACCESS signal at the following line of code inside a custom setter: [self willChangeValueForKey:@"mykey"]; The weird thing is that this happens when a factory method calls the custom setter and there should not be any observers around. I do not know how to debug this situation. Update: The way to list all registered observers is observationInfo. It turned out that there was indeed an object listed that points to an invalid address. However, I have no idea at all how it got there. Update 2: Apparently, the same object and method callback can be registered several times for a given object - resulting in identical entries in the observed object's observationInfo. When removing the registration only one of these entries is removed. This behavior is a little counter-intuitive (and it certainly is a bug in my program to add multiple entries at all), but this does not explain how spurious observers can mysteriously show up in freshly allocated objects (unless there is some caching/reuse going on that I am unaware of). Modified question: How can I figure out WHERE and WHEN an object got registered as an observer? Update 3: Specific sample code. ContentObj is a class that has a dictionary as a property named mykey. It overrides: + (BOOL)automaticallyNotifiesObserversForKey:(NSString *)theKey { BOOL automatic = NO; if ([theKey isEqualToString:@"mykey"]) { automatic = NO; } else { automatic=[super automaticallyNotifiesObserversForKey:theKey]; } return automatic; } A couple of properties have getters and setters as follows: - (CGFloat)value { return [[[self mykey] objectForKey:@"value"] floatValue]; } - (void)setValue:(CGFloat)aValue { [self willChangeValueForKey:@"mykey"]; [[self mykey] setObject:[NSNumber numberWithFloat:aValue] forKey:@"value"]; [self didChangeValueForKey:@"mykey"]; } The container class has a property contents of class NSMutableArray which holds instances of class ContentObj. It has a couple of methods that manually handle registrations: + (BOOL)automaticallyNotifiesObserversForKey:(NSString *)theKey { BOOL automatic = NO; if ([theKey isEqualToString:@"contents"]) { automatic = NO; } else { automatic=[super automaticallyNotifiesObserversForKey:theKey]; } return automatic; } - (void)observeContent:(ContentObj *)cObj { [cObj addObserver:self forKeyPath:@"mykey" options:0 context:NULL]; } - (void)removeObserveContent:(ContentObj *)cObj { [cObj removeObserver:self forKeyPath:@"mykey"]; } - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { if (([keyPath isEqualToString:@"mykey"]) && ([object isKindOfClass:[ContentObj class]])) { [self willChangeValueForKey:@"contents"]; [self didChangeValueForKey:@"contents"]; } } There are several methods in the container class that modify contents. They look as follows: - (void)addContent:(ContentObj *)cObj { [self willChangeValueForKey:@"contents"]; [self observeDatum:cObj]; [[self contents] addObject:cObj]; [self didChangeValueForKey:@"contents"]; } And a couple of others that provide similar functionality to the array. They all work by adding/removing themselves as observers. Obviously, anything that results in multiple registrations is a bug and could sit somewhere hidden in these methods. My question targets strategies on how to debug this kind of situation. Alternatively, please feel free to provide an alternative strategy for implementing this kind of notification/observer pattern.

    Read the article

  • iPhone SDK: Downloading large files from a server into the app bundle.

    - by Jessica
    Hi, I am building an app that plays multiple video files, But I would like to know How do you download a video file (100mb - 300mb) from a server into the application's bundle so it can later be locally referred to in code? The reason I want this type of a set up in my app is that I don't want the app binary to be made unnecessarily large due to including videos some users may not want. Also does this violate any of apple's terms? Also would it be simple to implement a progress view with this kind of set up and if so how? Any help is appreciated.

    Read the article

  • Change TabBarController in detail view

    - by Antriel
    So I have a TabBarController with 2 views. One of the views is a TableView in navigationController. When user selects a row I push a detail view there. I want this detail view to have its own TabBarController different from the former one. So basically the question is if I can push a view on top different view with different TabBarController, but using navigationController not as a modal view.

    Read the article

  • Fail to save a managed object to core-data after its properties were updated.

    - by Tzur Gazit
    I have to trouble to create the object, but updating it fails. Here is the creation code: // Save data from pList to core data fro the first time - (void) saveToCoreData:(NSDictionary *)plistDictionary { // Create system parameter entity SystemParameters *systemParametersEntity = (SystemParameters *)[NSEntityDescription insertNewObjectForEntityForName:@"SystemParameters" inManagedObjectContext:mManagedObjectContext]; //// // GPS SIMULATOR //// NSDictionary *GpsSimulator = [plistDictionary valueForKey:@"GpsSimulator"]; [systemParametersEntity setMGpsSimulatorEnabled:[[GpsSimulator objectForKey:@"Enabled"] boolValue]]; [systemParametersEntity setMGpsSimulatorFileName:[GpsSimulator valueForKey:@"FileName"]]; [systemParametersEntity setMGpsSimulatorPlaybackSpeed:[[GpsSimulator objectForKey:@"PlaybackSpeed"] intValue]]; [self saveAction]; } During execution the cached copy is changed and then it is saved (or trying) to the database. Here is the code to save the changed copy: // Save data from pList to core data fro the first time - (void) saveSystemParametersToCoreData:(SystemParameters *)theSystemParameters { // Step 1: Select Data NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; NSEntityDescription *entity = [NSEntityDescription entityForName:@"SystemParameters" inManagedObjectContext:mManagedObjectContext]; [fetchRequest setEntity:entity]; NSError *error = nil; NSArray *items = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error]; [fetchRequest release]; if (error) { NSLog(@"CoreData: saveSystemParametersToCoreData: Unresolved error %@, %@", error, [error userInfo]); abort(); } // Step 2: Update Object SystemParameters *systemParameters = [items objectAtIndex:0]; //// // GPS SIMULATOR //// [systemParameters setMGpsSimulatorEnabled:[theSystemParameters mGpsSimulatorEnabled]]; [systemParameters setMGpsSimulatorFileName:[theSystemParameters mGpsSimulatorFileName]]; [systemParameters setMGpsSimulatorPlaybackSpeed:[theSystemParameters mGpsSimulatorPlaybackSpeed]]; // Step 3: Save Updates [self saveAction]; } As to can see, I fetch the object that I want to update, change its values and save. Here is the saving code: - (void)saveAction { NSError *error; if (![[self mManagedObjectContext] save:&error]) { NSLog(@"ERROR:saveAction. Unresolved Core Data Save error %@, %@", error, [error userInfo]); exit(-1); } } The Persistent store method: - (NSPersistentStoreCoordinator *)persistentStoreCoordinator { if (mPersistentStoreCoordinator != nil) { return mPersistentStoreCoordinator; } NSString *path = [self databasePath]; NSURL *storeUrl = [NSURL fileURLWithPath:path]; NSError *error = nil; mPersistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]]; if (![mPersistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeUrl options:nil error:&error]) { NSLog(@"Unresolved error %@, %@", error, [error userInfo]); abort(); } return mPersistentStoreCoordinator; } There is no error but the sqLite file is not updated, hence the data is not persistent. Thanks in advance.

    Read the article

  • touchesEnded:withEvent: from UIScrollView First Responder

    - by Matthew Mitchell
    I've made a UIScrollView the first responder. I need to maintain touch events to a touchesEnded:withEvent: method on a view behind it. I've tried using the nextResponder method and that failed. I've tried forwarding touchesEnded:withEvent to the view behind it and that fails. How do I get this to work? The UIScrollView wont work unless it is the first responder or gets events some other way. Thank you for any help. Shame Apple's documentation and APIs are terrible in areas.

    Read the article

  • Changing pointer of self

    - by rob5408
    I have an object that I alloc/init like normal just to get a instance. Later in my application I want to load state from disk for that object. I figure I could unarchive my class (which conforms to NSCoding) and just swap where my instance points to. To this end I use this code... NSString* pathForDataFile = [self pathForDataFile]; if([[NSFileManager defaultManager] fileExistsAtPath:pathForDataFile] == YES) { NSLog(@"Save file exists"); NSData *data = [[NSMutableData alloc] initWithContentsOfFile:pathForDataFile]; NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data]; [data release]; Person *tempPerson = [unarchiver decodeObjectForKey:@"Person"]; [unarchiver finishDecoding]; [unarchiver release]; if (tempPerson) { [self release]; self = [tempPerson retain]; } } Now when I sprinkled some NSLogs throughout my application I noticed self.person: <Person: 0x3d01a10> (After I create the object with alloc/init) self: <Person: 0x3d01a10> (At the start of this method) tempPerson: <Person: 0x3b1b880> (When I create the tempPerson) self: <Person: 0x3b1b880> (after i point self to the location of the tempPerson) self.person: <Person: 0x3d01a10> (After the method back in the main program) What am I missing?

    Read the article

  • how to hide backbar button in navigationbar in iPhone sdk

    - by Prerak
    Hi, In my iPhone App there are three views [ firstView secondView and thirdView} now I want to put Back Button in navigation bar in thirdview only which should take me to back secondview only for that i m writting this code in first view self.navigationItem.hidesBackButton:NO; and it shows the back button in both the views secondView and thirdView what I should do to hide back button in the the second view? please Help and Suggest. thanks.

    Read the article

  • Question about memory usage

    - by sudo rm -rf
    Hi there. I have the following method: +(NSMutableDictionary *)getTime:(float)lat :(float)lon { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init]; [dictionary setObject:hour forKey:@"hour"]; [dictionary setObject:minute forKey:@"minute"]; [dictionary setObject:ampm forKey:@"ampm"]; return dictionary; } A lot of the method is chopped off, so I think I need the pool for some other stuff in the method. Here's my question. I know that I need to release the following objects: [dictionary release]; [pool release]; However, I can't release the dictionary before I return it, but as soon as I return it the rest of the method isn't performed. What should I do?

    Read the article

  • Adding a footer to a table in another view?

    - by cannyboy
    The app I'm making has a settings view which I want to show on the first run of the app. Normally (after the first run) this view will be pushed onto the screen and there will be a "Back" button in the nav bar. However, on first launch I don't want there to be a back button. Instead, I want to add a 'Done' button at the footer of the table... and then the view can be popped. Here's my code (in my initial view's viewDidLoad). I have removed the back button, but don't know how to add the footer and button. NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults]; if ([prefs stringForKey:@"firstRun"] == nil) { SettingsViewController *settingsView = [[SettingsViewController alloc] initWithNibName:@"SettingsView" bundle:nil]; settingsView.hidesBottomBarWhenPushed = YES; settingsView.navigationItem.hidesBackButton = TRUE; // add footer button here? [[self navigationController] pushViewController:settingsView animated:YES]; [settingsView release]; [prefs setObject:@"OK" forKey:@"firstRun"]; } else { //something }

    Read the article

  • How to increment a value using a C-Preprocessor?

    - by mystify
    Example: I try to do this: static NSInteger stepNum = 1; #define METHODNAME(i) -(void)step##i #define STEP METHODNAME(stepNum++) @implementation Test STEP { // do stuff... [self nextFrame:@selector(step2) afterDelay:1]; } STEP { // do stuff... [self nextFrame:@selector(step3) afterDelay:1]; } STEP { // do stuff... [self nextFrame:@selector(step4) afterDelay:1]; } // ... When building, Xcode complains that it can't increment stepNum. This seems logical to me, because at this time the code is not "alive" and this pre-processing substitution stuff happens before actually compiling the source code. Is there another way I could have an variable be incremented on every usage of STEP macro, the easy way?

    Read the article

  • I know I can't say myView.frame.origin.x = val - But why ?

    - by Allisone
    I know that I can't use that myView.frame.origin.x = 25.0; that I have to use instead CGRect myFrame = myView.frame; myFrame.origin.x = 25.0; myView.frame = myFrame; And I'm doing it all the time (f.e. in animations), but I don't know why I must do it that way. I would like to fill that gap in my understanding. Can someone explain ?

    Read the article

  • ViewController behaving oddly when pushed on the window

    - by ayazalavi
    I am using multiple controller during launch of an application in app delegate. One controller is for registration and the second controller is tabbar. tabbar was loading fine but when I pushed registration controller on window, contents went up by 20 units and I have good white blank screen at bottom. Therefore I recreated frame of my registration view controller in its viewdidload method and slided it 20 units down. The code is self.view.frame = CGRectMake(0, 20, self.view.frame.size.width, self.view.frame.size.height); and code in my app delegate for launch application was - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { if (![self accountExists]) { //code if account does not exists on iphone app database self.registerAccount = [[registerViewController alloc] initWithNibName:@"registerViewController" bundle:nil]; [window addSubview:registerAccount.view]; } else if([self autoLoginForAnyAccount]){ //code for autologin to app } else { self.tabBarController.selectedIndex = 1; self.tabBarController.delegate = self; [window addSubview:tabBarController.view]; } [window makeKeyAndVisible]; return YES; } if anyone knows why there is a white space at bottom when registration controller is pushed then please share it with me.

    Read the article

  • NSCoding and ostream

    - by Stephen Furlani
    Is there a better way to serialize an ObjC object than using /NSKeyedArchive? I need to distribute the object through a C++ std:ostream-like object to put on another computer. The object has over 122 members of various types... for which wants me to [coder encodeObject: (id) forKey: @"blah"]; for all of them... Does anyone have a nice Perl Script that will at least write it out? I don't even know if the objects it contains implement which means this could turn into a huge ugly mess since I can't change the source of the object - I'll have to inherit & add the @interface to it... Or am I being dumb? Apple's guide doesn't help me since archiving to XML won't pass nicely though the ostream. Is there a better way to do this? -S!

    Read the article

  • Accordion table cell - How to dynamically expand/contract uitableviewcell?

    - by s.newave
    Hi, I am trying create an accordion type of uitableviewcell that, when the user selects the cell, it expands to display a detailed info view inline similar to how the digg app works. I initially tried replacing the current tablecell with a customcell in cellForRowAtIndex however the animation looks a bit choppy as you can see the cell being replaced and overall the effect doesnt work to well. If you look at the digg app and others who have done this it seems that they arent replacing the current cell but instead perhaps adding a subview to the cell? The original cell however doesnt seem to animate at all and only the new view accordions into the table. Does anyone have any ideas how to accomplish a similar effect?

    Read the article

  • how to delete all files in a folder, but not the folder itself?

    - by Frost Li
    I try to delete all files including subdirectories in a folder: NSFileManager *deleteMgr = [NSFileManager defaultManager]; NSString *path = @"~/test/"; [deleteMgr removeItemAtPath:path error:&error]; And it deletes everything including the folder itself. But what I expect is an empty folder. Could anyone please help me what did I do wrong? Really thanks your help! :)

    Read the article

  • Acessing a wordpress database from an iPhone App.

    - by Code
    Hi guys, I've been asked to create an app that will get data back from a database where the CMS will be Wordpress. I've never used a CMS so I'm trying to get a (overview)picture in my head of how it could all work and what each of the components would be. And what a CMS actually brings to the party. Creating the app itself is pretty clear. I've done a few already. I've made a database before and shouldnt cause a problem. But what is going to be in the middle between the app and the database? Part A: I'm guessing iphone apps typically would call some php file that's hosted on the server? The php then would make a call to the database and return the data somehow, maybe as xml. But this is really basic and wouldnt require a CMS. Just a database and a phpfile, or am I wrong? Part B: If i wanted to run a check on the database every minute to see if any of the data in database was no longer valid and remove it if needed, that would require somekind of program running on the server. So that program would be Wordpress, since it is managing the content, so a content management system is actually needed and is for these kind of taskes. Am i understanding the role of CMS? Many Thanks, -Code

    Read the article

  • How can I access the int values of an object in an NSMutableArray?

    - by Daniel
    I try to access some values in a NSMutableArray I created, but I only get some numbers (address?) if I try to access them. I was able to initialize an array and can add and change objects with [myNSMutableArray addObject:[NSNumber numberWithInt:10]] and [myNSMutableArray replaceObjectAtIndex:0 withObject:[NSNumber numberWithInt:47] I also can print the value at index [0] with NSLog(@"%@", [myNSMutableArray objectAtIndex:0]); and I get 47 as expected. But how can I access the integer value of the object in the array so I can save it tomyIntValue?

    Read the article

  • Does "opening a file" mean loading it completely into memory?

    - by mystify
    There's an AudioFileOpenURL function which opens an file. With AudioFileReadPackets that file is accessed to read packets. But one thing that stucks in my brain is: Does AudioFileOpenURL actually load the whole monster into memory? Or is that a lightweight operation? So is it possible to read data from a file, only a specific portion, without having the whole terabytes of stuff in memory?

    Read the article

  • How to check Internet status in iPhone

    - by Radix
    Hello; I wanted to check whether internet is connected or not using either the SystemConfiguration or the CFNetwork i am not quite sure which one. Then i want to know that if the internet is connected then is it connected through wifi or not. I tried an example where i used the below code -(IBAction) shownetworkStatus { NSURL *url = [NSURL URLWithString:@"www.google.com"]; if (url!=NULL) { lbl.text = @"Connected"; } else { lbl.text = @"notConnected"; } } some say that its not valid as per apple and you have to use the SystemConfiguration Framework, Please let me know what needs to be done. Also i personally think that what i am doing in the above code is not proper as if one day google may also be down due to maintenance or some other factors. Also if you could provide me a link where i could display the name of the WIFI network then it would be really cool. I searched the internet then i got these Reachability.h code which again is a bouncer as i wana learn the concepts not copy paste them Thanks and Regards Radix

    Read the article

  • UITableView with contact image problems.

    - by prathumca
    As par my app requirement, I'm showing the contact images in a UITableView as shown below. ABRecordRef contact = [self getContact]; if(contact && ABPersonHasImageData(contact)) { UIImage *contactImage = [UIImage imageWithData:(NSData*)ABPersonCopyImageData(contact)]; callImage.image = contactImage; } I've two problems if I use the above code segment. Table Scrolling is too slow. If comment the above code, then UITable responds very fast. Memory Management. My app started using 25 - 30 MB of RAM. Is there any better way to avoid the above two problems?

    Read the article

< Previous Page | 213 214 215 216 217 218 219 220 221 222 223 224  | Next Page >