Search Results

Search found 295 results on 12 pages for 'uitableviewcontroller'.

Page 1/12 | 1 2 3 4 5 6 7 8 9 10 11 12  | Next Page >

  • How does UITableViewController knows its dataSource and delegate

    - by denniss
    I am following the BigNerdRanch iOS Programming book and I am on this one chapter that deals with UITableViewController. I have been wondering however where UITableViewController finds out about its delegate and dataSource. Currently I have it as @interface ItemsViewController : UITableViewController <UITableViewDataSource, UITableViewDelegate> But there is nothing that looks like: [self.tableView setDelegate:self] I am just wondering how the UITableViewController finds out about its delegate and dataSource

    Read the article

  • UITableViewController setting delegates and datasource

    - by the_great_monkey
    Hi iOS gurus, I'm a little bit confused about UITableViewController... As far as I concern they are typically the delegate and datasource of the UITableView (although it can be made such that they are different). However in some cases, like when embedding a UITableViewController in a UITabBarViewController in Interface Builder, we initiate our table view controller in IB. Therefore in my understanding, the default initialiser is being called. But in this case, I have this piece of code: @interface Settings : UITableViewController { } And in the IB I see that the delegate and datasource of the UITableView is hooked up to this class. My question is, why is it that we don't need to explicitly say that it is following: @interface Settings : UITableViewController <UITableViewDelegate, UITableViewDataSource> { } And in the .m file: - (void)viewDidLoad { [super viewDidLoad]; [tableView setDelegate:self]; [tableView setDataSource:self]; } I have indeed stumbled upon some cases where I have to explicitly code the above a few times to make something work. Although it is still a mystery for me as of why it is needed...

    Read the article

  • UITableViewController not redrawing new cell text label after popViewControllerAnimated

    - by crunchyt
    I have a problemetic UITableViewController fails to redraw an updated cell after a child view is removed. Here's what's happening. After changing data in a child view, the parent view controller reloads the source data array and runs [tableView reloadData] via a PostNotification. After this triggers, I use popViewControllerAnimated to return to the parent UITableViewController (this pops the child view off the stack, and reveals the controller one level up). However, my updated data does not appear in the parent view controller! According to the debugger, the cell's label has been updated, but the visible label does not change. However, if I scroll-flick the table, momentarily moving the updated cell out of view, when it reappears the label is updated! I also try calling [tableView reloadData] via viewWillAppear but the issue still persists. Here is some additional info that may be helpful. I have a 3 views structured like this: 1/ SettingsViewController : UITableViewController 2/ -- UserView : UITableViewController 3/ ---- UserDetailsView : UIViewController <UIActionSheetDelegate> I am calling UserDetailsView from inside UserView as follows: UserDetailsView *userDetailsView = [[UserDetailsView alloc] init]; [self.navigationController pushViewController:userDetailsView animated:YES]; If I return to the top-most controller (SettingsViewController) and then load the problematic controller (UserView), everything is drawn correctly. It is only when returning from a child view that this issue occurs. Thank you in advance for your suggestions.

    Read the article

  • NSFetchedResultsController Crashes When Navigating from One UITableViewController to Another

    - by wgpubs
    In my core data model I have a Person entity that has a "to many" relationship a Course entity (I also have an inverse "to one" relationship from Course to Person). Now I have a subclassed UITableViewController that uses a NSFetchedResultsController to display Person objects which works fine. I have this set up so that when you click on a Person it publishes another subclassed UITableViewController that uses a NSFetchedController as well to display the Courses associated to the person. PROBLEM: I get this exception whenever I click on the Person and attempt to display the Course UITableViewController ... "Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'keypath name not found in entity <NSSQLEntity Course id=2>'" Any ideas on how to resolve or troubleshoot? The code between the two ViewControllers is almost identical except for the NSFetchedResultsController being configured for "Person" entities in one and "Course" entities in another

    Read the article

  • NSFetchedResultsController when navigating from one UITableViewController to another ...

    - by wgpubs
    In my core data model I have a Person entity that has a "to many" relationship a Course entity (I also have an inverse "to one" relationship from Course to Person). Now I have a subclassed UITableViewController that uses a NSFetchedResultsController to display Person objects which works fine. I have this set up so that when you click on a Person it publishes another subclassed UITableViewController that uses a NSFetchedController as well to display the Courses associated to the person. PROBLEM: I get this exception whenever I click on the Person and attempt to display the Course UITableViewController ... "Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'keypath name not found in entity '" Any ideas on how to resolve or troubleshoot? The code between the two ViewControllers is almost identical except for the NSFetchedResultsController being configured for "Person" entities in one and "Course" entities in another

    Read the article

  • iPhone - UITableViewController not loading table

    - by RyanJM
    I'm pushing a UITableViewController onto a navigationController. The title (set in the viewDidLoad) shows up but not the table. numberOfSectionsInTableView is called. But tableView:numberOfRowsInSection: is not called. I'm passing in 1 so it should be looking for number of rows. - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return 1; } I'm setting up the view in the following manner: SelectUserViewController *nextController = [[SelectUserViewController alloc] initWithStyle:UITableViewStyleGrouped]; nextController.managedObjectContext = managedObjectContext; OrangeQCAppDelegate *delegate = [[UIApplication sharedApplication] delegate]; [delegate.navigationController pushViewController:nextController animated:YES]; Again, the viewDidLoad method is called. And my class is set up as follows: @interface SelectUserViewController : UITableViewController <UITableViewDelegate, UITableViewDataSource> {...} What else should I be looking at? When I go through the debugger, after it looks at numberOfSectionsInTableView it just disappears (I think it is in the UITableViewController class) and never comes back.

    Read the article

  • Parent class issue - UITableViewController doesn't work

    - by Darko Hebrang
    When I access my Search View from my tab bar, the view gets loaded when SearchViewController interface is set like this: @interface SearchViewController : UIViewController but it crashes when I set it like this (although it doesn't crash when it is not accessed through the tab bar): @interface SearchViewController : UITableViewController Why? I need the UITableViewController as I have a table view that I access from the tab bar.

    Read the article

  • iPhone UITableViewController and Checklist

    - by Leo
    Hi guys, I have an iPhone application. First view controller which is a UITableViewController has a cell for "category". When user select "category" it will push another UITableViewController where user can select category. What is the proper way to implement that so when you click back on navigation bar it will remember your selection and populate the selected in the back view controller's "category" cell. An example of this can be found in ebay application. When you search for something in ebay iphone application you have "Refine" button on top right. When you click this you can further refine the category. I'm trying to achieve exactly like this. Thanks

    Read the article

  • UITableViewController's TableView becomes NULL

    - by Travis
    I have UITableViewController (initiated by the Navigation-based app project template). I am overriding loadView and putting up an alternative view (w/ a UILabel and UIActivityIndicator) to display while the table's contents is loading. When the loading is done, I remove the loading view and try to display the table view but I see that it's NULL. So in the simulator I see my loading view and then when the loading's done the view disappears but my tableview never comes. I'm confused what the difference is between self.view and self.tableView in my UITableViewController and how I can exchagn

    Read the article

  • Automatically Loading XIB for UITableViewController

    - by ACBurk
    Ran into something interesting, want to know if I'm doing something wrong or if this is the correct behavior. I have a custom UITableViewController. I ASSUMED (first mistake) that if you initialize as such: [[CustomTableController alloc] init]; it would automatically load from a XIB of the same name, CustomTableController.xib, if it is in the same directory and such. HOWEVER This does not work; doesn't load the XIB. BUT, if I change the parent class of my controller from 'UITableViewController' to 'UIViewController', EVERYHTING WORKS FINE! Calling: [[CustomTableController alloc] init]; loads the controller and view from my xib. Am I doing something wrong? Is this a bug? Expected behavior?

    Read the article

  • Handling empty UITableView in UITableViewController

    - by Travis
    I have a UITableViewController that is populated with some data. If the data comes back empty, obviously the table is empty. What is the appropriate method to use to handle this case and put up something like a UILabel with "No Data Available". I have been using - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section but it's proven a bit cumbersome and I'm not longer confident it's the best place to do this.

    Read the article

  • Handling touches in UITableViewController

    - by subw
    I want to implement the handling of an additional swipe gesture in my UITableViewController. However, it seems that in the case of tableviews the usual touch handling methods like -[touchesBegan::] of the controller are not called. How can I handle touches on a UITableView?

    Read the article

  • How do you add gestures to a UITableViewController?

    - by mea36
    I want to implement right-to-left and left-to-right gestures on a view that inherits from UITableViewController. I have the code for the gestures implemented in another view (UIViewController) and it works. It does't seem like touchesBegan is even getting called. Does anyone know know to do this? Thanks

    Read the article

  • Does it make sense to use a NSFetchedResultsController without an UITableViewController? How are the

    - by dontWatchMyProfile
    I mean... could I also just create a plain old UIViewController and then set up a UITableView myself, plus an NSFetchedResultsController? How much do UITableViewController and NSFetchedResultsController interact with eachother? As far as I see it, UITableViewController is NOT by default already adopting the NSFetchedResultsControllerDelegate protocol. It almost looks like if UITableViewController has been developed without knowing about NSFetchedResultsController. Probably they even did that before developing FRC. Anyways, just a raw guess because the UITableViewController lacks of mentioning FRC at all. So the only thing I see in UITableViewController is that it is already the delegate for a UITableView by adopting the protocol, and it sets up the UITableView instance for me and assigns it internally to it's tableView property. Is that the whole magic of UITableViewController? (note: the nsfetchedresultscontrolle tag is not a typo. SO has a limit for the num of chars...too bad for that missing r, that's why I avoided this tag in my other buch of questions like the plague)

    Read the article

  • UITableViewController truncating section header title

    - by dl
    I've got an iPad app with a UITableViewController. I am setting the header titles for my table sections using - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section When the table loads, if I scroll down too quickly, when a section header appears on screen it will be truncated to the first letter and ... (ie "Holidays" is trucated to "H..."). If I keep scrolling down until the header goes off the top of the view and then scroll back up to it, the title appears correctly in full. Has anyone ever experienced this?

    Read the article

  • Can you add a UITableViewController's TableView to another View?

    - by Dan Harrelson
    I've inserted a UITableViewController and it's corresponding UITableView into a simple IB document. The goal is to include the UITableView inside of a parent UIWindow (or UIView) with other "stuff" (anything really) adorning the table. Here's what that might look like in Interface Builder. http://danharrelson.com/images/skitch/iphone-tableview-3-20090701-205535.png I've tried this numerous times and always get to the same place. Build a working subclass of UITableViewController filled with data Customize the UTableView and it's cells including tap targets Add the newly created UITableViewController into an IB document Drag the UITableView out of the UITableViewController and into the main UIView Wire up the UITableViewController to the UITableView Note: adding the UITableViewController in code results in the same problem When running the app in the iPhone emulator or on a device the table displays correctly, but crashes the first time you try and interact with it. A scroll, a tap, anything crashes the app. This seems to be a delegate problem, like the UITableView doesn't know how to communicate back to the UITableViewController, but I have no idea how to correct the problem. So far I have been able to get by by customizing the tableHeaderView to get layouts that suffice, but I'd really prefer to have the other technique work.

    Read the article

  • Nav Controller, UITableViewController, UITextField to become firstResponder?

    - by Daniel Granger
    I have a core data application which uses a navigation controller to drill down to a detail view and then if you edit one of the rows of data in the detail view you get taken to an Edit View for the that single line, like in Apples CoreDataBooks example! The edit view is a UITableviewController which creates its table with a single section single row and a UITextfield in the cell, programatically. What I want to happen is when you select a row to edit and the edit view is pushed onto the nav stack and the edit view is animated moving across the screen, I want the textfield to be selected as firstResponder so that the keyboard is already showing as the view moves across the screen to take position. Like in the Contacts app or in the CoreDataBooks App. I currently have the following code in my app which causes the view to load and then you see the keyboard appear (which isn't what I want, I want the keyboard to already be there) - (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; [theTextField becomeFirstResponder]; } You can't put this in -viewWillAppear as the textfield hasn't been created yet so theTextField is nil. In the CoreDataBooks App where they achieve what i want they load there tableview from a nib so they use the same code but in -viewWillAppear as the textfield has already been created! Is there anyway of getting around this without creating a nib, I want to keep the implementation programatic to enable greater flexibility. Many Thanks

    Read the article

  • Handle row deletion in UITableViewController

    - by Kamchatka
    Hello, I hava a UINavigationController. The first level is a UITableViewController, the second level just shows details on one of the items of the table view. In this detail view, I can delete the item. It deletes the underlying managed object. When I pop back to the view, I have a crash. I understand why, it's because I didn't update the cached array that contains the data. I looked at several tutorials and I don't exactly understand how am I supposed to handle deletion. Maybe I don't understand exactly where I should fetch the objects in the model. Should I do a query for every cellForRowAtIndexPath and take the item in the result at position indexPath.row? It doesn't look efficient. Should I check for changes somewhere and recache the whole query in an array. I would think CoreData would provide something more natural but I couldn't find it so far. Thanks in advance.

    Read the article

  • iPhone Key-Value Observer: observer not registering in UITableViewController

    - by Scott
    Hi Fellow iPhone Developers, I am an experienced software engineer but new to the iPhone platform. I have successfully implemented sub-classed view controllers and can push and pop parent/child views on the view controller stack. However, I have struck trouble while trying to update a view controller when an object is edited in a child view controller. After much failed experimentation, I discovered the key-value observer API which looked like the perfect way to do this. I then registered an observer in my main/parent view controller, and in the observer I intend to reload the view. The idea is that when the object is edited in the child view controller, this will be fired. However, I think that the observer is not being registered, because I know that the value is being updated in the editing view controller (I can see it in the debugger), but the observing method is never being called. Please help! Code snippets follow below. Object being observed. I believe that this is key-value compliant as the value is set when called with the setvalue message (see Child View Controller below). X.h: @interface X : NSObject <NSCoding> { NSString *name; ... @property (nonatomic, retain) NSString *name; X.m: @implementation X @synthesize name; ... Main View Controller.h: @class X; @interface XViewController : UITableViewController { X *x; ... Main View Controller.m: @implementation XViewController @synthesize x; ... - (void)viewDidLoad { ... [self.x addObserver:self forKeyPath: @"name" options: (NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld) context:nil]; [super viewDidLoad]; } ... - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { if ([keyPath isEqual:@"name"]) { NSLog(@"Found change to X"); [self.tableView reloadData]; } [super observeValueForKeyPath:keyPath ofObject:object change:change context:context]; } Child View Controller.m: (this correctly sets the value in the object in the child view controller) [self.x setValue:[[tempValues objectForKey:key] text] forKey:@"name"];

    Read the article

  • UITableViewController and viewForHeaderInSection problems

    - by Fiona
    Hello, So I need your help please! I've created a UITableViewController: ContactDetailViewController. In IB in the nib file, I've added a view ahead of the table view and hooked it up to headerView - a UIView declared in the .h file. I've also created a view: CustomerHeaderView However when I run the code below, Its throwing an exception at the following line: headerView = [[UIView alloc] initWithNibName:@"ContactHeaderDetail" bundle:nil]; The error being thrown is: 2010-05-20 10:59:50.405 OnePageCRM[19620:20b] * -[UIView initWithNibName:bundle:]: unrecognized selector sent to instance 0x3ca4fa0 2010-05-20 10:59:50.406 OnePageCRM[19620:20b] Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '** -[UIView initWithNibName:bundle:]: unrecognized selector sent to instance 0x3ca4fa0' So any ideas anyone? Many thanks, Fiona // // ContactDetailViewController.m // OnePageCRM // // Created by Fiona Tighe on 19/05/2010. // Copyright 2010 __MyCompanyName__. All rights reserved. // #import "ContactDetailViewController.h" #import "DisplayInfoViewController.h" #import "ActionViewController.h" #define SectionHeaderHeigth 200 @implementation ContactDetailViewController @synthesize name; @synthesize date; @synthesize headerView; @synthesize nextAction; @synthesize nameLabel; @synthesize usernameLabel; @synthesize nextActionTextField; @synthesize dateLabel; @synthesize notesTableView; @synthesize contactInfoButton; @synthesize backgroundInfoButton; @synthesize actionDoneButton; - (void)viewDidLoad { [super viewDidLoad]; // Uncomment the following line to display an Edit button in the navigation bar for this view controller. // self.navigationItem.rightBarButtonItem = self.editButtonItem; } - (void)didReceiveMemoryWarning { // Releases the view if it doesn't have a superview. [super didReceiveMemoryWarning]; // Release any cached data, images, etc that aren't in use. } - (void)viewDidUnload { // Release any retained subviews of the main view. // e.g. self.myOutlet = nil; } #pragma mark Table view methods - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return 2; } // Customize the number of rows in the table view. - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { int numOfRows; NSLog(@"section: %d", section); switch (section){ case 0: numOfRows = 0; break; case 1: numOfRows = 3; break; default: break; } return numOfRows; } - (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { if (section == 0){ headerView = [[UIView alloc] initWithNibName:@"ContactHeaderDetail" bundle:nil]; // headerView = [[UIView alloc] initWithNibName:@"ContactHeaderDetail" bundle:nil]; return headerView; }else{ return nil; } } - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{ return SectionHeaderHeigth; } // Customize the appearance of table view cells. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) { cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; } // Set up the cell... return cell; } - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { // Navigation logic may go here. Create and push another view controller. // AnotherViewController *anotherViewController = [[AnotherViewController alloc] initWithNibName:@"AnotherView" bundle:nil]; // [self.navigationController pushViewController:anotherViewController]; // [anotherViewController release]; } /* // Override to support conditional editing of the table view. - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath { // Return NO if you do not want the specified item to be editable. return YES; } */ /* // Override to support editing the table view. - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath { if (editingStyle == UITableViewCellEditingStyleDelete) { // Delete the row from the data source [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:YES]; } else if (editingStyle == UITableViewCellEditingStyleInsert) { // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view } } */ /* // Override to support rearranging the table view. - (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath { } */ /* // Override to support conditional rearranging of the table view. - (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath { // Return NO if you do not want the item to be re-orderable. return YES; } */ -(IBAction)displayContactInfo:(id)sender{ DisplayInfoViewController *divc = [[DisplayInfoViewController alloc] init]; divc.textView = self.nextAction; divc.title = @"Contact Info"; [self.navigationController pushViewController:divc animated:YES]; [divc release]; } -(IBAction)displayBackgroundInfo:(id)sender{ DisplayInfoViewController *divc = [[DisplayInfoViewController alloc] init]; divc.textView = self.nextAction; divc.title = @"Background Info"; [self.navigationController pushViewController:divc animated:YES]; [divc release]; } -(IBAction)actionDone:(id)sender{ ActionViewController *avc = [[ActionViewController alloc] init]; avc.title = @"Action"; avc.nextAction = self.nextAction; [self.navigationController pushViewController:avc animated:YES]; [avc release]; } - (void)dealloc { [name release]; [date release]; [nextAction release]; [nameLabel release]; [usernameLabel release]; [nextActionTextField release]; [dateLabel release]; [notesTableView release]; [contactInfoButton release]; [backgroundInfoButton release]; [actionDoneButton release]; [headerView release]; [super dealloc]; } @end

    Read the article

  • Getting sectionNameKeyPath to work with CoreData/UITableViewController

    - by Elon
    In my AppDelegate I create an NSFetchedResultsController with sectionNameKeyPath set to @"group". In viewWillAppear in my TableViewController I performFetch, then call a method called findGroups. findGroups does some complicated analysis of the entire dataset to identify groups, then sets the "group" transient property on each object to the correct string value. I can see with NSLog that these are all set correctly and in coherent groups. But, tinker as I may, my cells are shown in a single section with the title of the first group. Any ideas?

    Read the article

  • Can't get Secondary UITableViewController to display inside a UITabBarController

    - by Paul Johnston
    I've programmatically created a UITabBarController that is loaded in my App Delegate like this: - (void)applicationDidFinishLaunching:(UIApplication *)application { tabBarController = [[UITabBarController alloc] init]; myTableViewController = [[MyTableViewController alloc] init]; UINavigationController *tableNavController = [[[UINavigationController alloc] initWithRootViewController:myTableViewController] autorelease]; myTableViewController.title = @"Tab 1"; [myTableViewController release]; mySecondTableViewController = [[MySecondTableViewController alloc] init]; UINavigationController *table2NavController = [[[UINavigationController alloc] initWithRootViewController:mySecondTableViewController] autorelease]; mySecondTableViewController.title = @"Tab 2"; [mySecondTableViewController release]; tabBarController.viewControllers = [NSArray arrayWithObjects:tableNavController, table2NavController, nil]; [window addSubview:tabBarController.view]; [window makeKeyAndVisible]; } Now the issue I have is that I can get into the views no problem, but when I try and click onto any item in the Table View, I can't get a secondary table view to appear in any tab. The tabs work absolutely fine, just the secondary views. I'm using the code below in my myTableViewController to run when selecting a specific row (the code reaches the HELP line, and crashes)... - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { NSUInteger row = [indexPath row]; // this gets the correct view controller from a list of controllers SecondaryViewController *svc = [self.controllers objectAtIndex:row]; /*** HELP NEEDED WITH THIS LINE ***/ [self.navigationController pushViewController:svc animated:YES]; } Simply put, I'm trying to switch views to the new view controller whilst keeping the tabs available and using the navigation to go back and forth (like in the iTunes App). Any help appreciated. Thanks

    Read the article

  • How to implement "Load 25 More" in UITableViewController

    - by Leo
    Hi guys, I am working on an iphone application. Application loads plenty of records from a webservice into table view controller. I would like to load 25 records initially and remaining in 25 batch on clicking something like "Load 25 more" at the end of the table view. Any help would be grealy appreciated. Thanks

    Read the article

1 2 3 4 5 6 7 8 9 10 11 12  | Next Page >