Note that there are some explanatory texts on larger screens.

plurals
  1. PONSURLConnection delegate
    primarykey
    data
    text
    <p>REVISED...</p> <p>The crux of the app is communicating with a database server. Responses from the server to the app are all in XML. There are several screens. Example, screen 1 lists the user's information, screen 2 lists the user's past trades, allows new trades, and so on.</p> <p>Here is some code from my AppDelegate:</p> <pre><code>StartViewController *svc = [[StartViewController alloc] init]; TradeViewController *tvc = [[TradeViewController alloc] init]; CashViewController *cvc = [[CashViewController alloc] init]; ComViewController *covc = [[ComViewController alloc] init]; PrefsViewController *pvc = [[PrefsViewController alloc] init]; NSMutableArray *tabBarViewControllers = [[NSMutableArray alloc] initWithCapacity:5]; UITabBarController *tabBarController = [[UITabBarController alloc] init]; UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:svc]; [tabBarViewControllers addObject:navigationController]; navigationController = nil; navigationController = [[UINavigationController alloc] initWithRootViewController:tvc]; [tabBarViewControllers addObject:navigationController]; navigationController = nil; navigationController = [[UINavigationController alloc] initWithRootViewController:cvc]; [tabBarViewControllers addObject:navigationController]; navigationController = nil; navigationController = [[UINavigationController alloc] initWithRootViewController:covc]; [tabBarViewControllers addObject:navigationController]; navigationController = nil; navigationController = [[UINavigationController alloc] initWithRootViewController:pvc]; [tabBarViewControllers addObject:navigationController]; navigationController = nil; [tabBarController setViewControllers:tabBarViewControllers]; [[self window] setRootViewController:tabBarController]; self.window.backgroundColor = [UIColor whiteColor]; [self.window makeKeyAndVisible]; </code></pre> <p>Trying to stick with the MVC style, I have a singleton class which does all of the "processing".</p> <p>Now an example on how I run into a wall… the user can change their email address on screen 5. Enter new email address into text field and click the save button. The button then calls a method from the singleton class which sends the new email address to the server and (via the URL) and receives a XML response confirming the change.</p> <p>Here are my problems: 1. I start the spinner from the view controller before I make the singleton class method call - but not knowing when the app to server send/receive is finished, how do I make the spinner stop at the right time? I can't of it from the singleton class, I tried that. From what I know, it has to be from within the VC or is there a way to change VC output from my singleton class?</p> <ol> <li><p>The singleton class NSURLConnection is handling ALL of my communication. Everything from a simple, email change all the way to updating transaction tables. This just seems wrong to me and makes it very difficult to keep track on who is calling what. Again, I am going by my interpretation of MVC. I think it would be much easier to have a NSURLConnection for every VC and do some processing in those classes. However that would not be MVC(ish).</p></li> <li><p>I have close to a 100 variables, arrays, etc… in my singleton class which I use to assign values to all my VC. This also seems wrong to me but I can't think of any other way.</p></li> </ol>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload