Tuesday, July 14, 2009

Detail Editor Update: To Many Relationships

Click image for larger version


As you can see above, I've got the to-many relationship editing working in my property-list driven generic detail editing pane class. Still some really rough edges, but the basic functionality now works. You can select multiple managed objects of the type used for the relationships and, as with the to-one relationship, you can add new items as well.



5 comments:

chrizbo said...

Really cool stuff. I had to build a lot of this from scratch for a complicated and dynamic filtering UX.

Here are a few thoughts and ideas I had while building a multiple select capability into that UX...

The way it is shown in the screenshot may be confusing: can I select the items above the 'select...' cell? When I go to the next screen they are checked, but they aren't in the one before.

What about having one summary cell that lists out the options? You could have it as a comma separated in one string like "Flight, Invincibility and Super Speed" that adjusts its height as more options are selected.

When the cell is selected it still takes the user to the list with multiple-cells check-boxed as shown.

Also, I would recommend that you have a way to do select all as a separate group above all of the options in the second screen (if the developer wants it).

Keep up the great work and I look forward to the release of the code!

Jeff LaMarche said...

chrizbo:

Those are some good suggestions. Many of them will have to wait, though. For the book, I want to avoid too much complexity. In fact, I'm already concerned that what I have is too complex to explain easily.

But, once the book is done, I'd absolutely like to use some of your ideas.

Louis said...

Could I suggest that the "Select" table cell be instead changed to a button? When you then show a modal dialog with a Cancel button instead of a Back button, that interrupts the flow of the navigation tables. I expect that an arrow to the right will go deeper into the hierarchy.

Or similar to Chrizbo, just add the checkboxes to the screen, if there are only a few items. If there are more, I would perhaps suggest using a textual display like a list and an Edit button.

I know, this is to show such programming concepts, and since NSFetchedResultsController is *so* much fun, you want to use it, but not everything needs a table. ;-) And if you add an edit button, you can then make it apply to the whole screen and do a flippy-animation to show the edit behind the display.

By the way, I haven't yet posted this, but I'm 90% happy with my implementation of a search bar/controller using NSFetchedResultsController. It's neat to add a predicate and keep your existing methods (almost) the same. The trouble spots I had involved the section index not getting updated, for whatever reason, so I had to remove their display. And afterward, section indexing stopped functioning, so I had to reload the data and redraw the table. But despite that, it works great.

If anyone's interested, reply here, I don't mind posting the code on github or something.

Edwin said...

scrub m65 kamagra attorney lawyer body scrub field jacket lovegra marijuana attorney injury lawyer

h4ns said...

What youre saying is completely true. I know that everybody must say the same thing, but I just think that you put it in a way that everyone can understand. I also love the images you put in here. They fit so well with what youre trying to say. Im sure youll reach so many people with what youve got to say.

Arsenal vs Huddersfield Town live streaming
Arsenal vs Huddersfield Town live streaming
Wolverhampton Wanderers vs Stoke City Live Streaming
Wolverhampton Wanderers vs Stoke City Live Streaming
Notts County vs Manchester City Live Streaming
Notts County vs Manchester City Live Streaming
Bologna vs AS Roma Live Streaming
Bologna vs AS Roma Live Streaming
Juventus vs Udinese Live Streaming
Juventus vs Udinese Live Streaming
Napoli vs Sampdoria Live Streaming
Napoli vs Sampdoria Live Streaming
Fulham vs Tottenham Hotspur Live Streaming
Fulham vs Tottenham Hotspur Live Streaming
AS Monaco vs Marseille Live Streaming
AS Monaco vs Marseille Live Streaming
Alajuelense vs Perez Zeledon Live Streaming
Alajuelense vs Perez Zeledon Live Streaming
Technology News | News Today | Live Streaming TV Channels