I assume I can build a completely different-looking list based on the same relation column on different locations of a site. That seems the case when I choose a card list component on the user profile tab instead of the list view I use elsewhere in the site. But when I start editing the detail view in the card list it affects as well the detail view in the list view elsewhere. What do I do wrong?
Yeah, this can be a bit tricky.
If you want different details views from the same list, generally what you need to do is change the default action on one of the lists. Instead of Show Details->This item, make it Show New Screen->This item.
This works in most cases, but not all. I don’t think I’ve ever figured out exactly when it works and when it doesn’t. @Jeff_Hager can probably answer that one.
Mmm … this is not what I would expect from my precious Glide. Feels a logical thing to want. But then again, I’m not technical, what do I know, maybe it’s very complex or not logical at all.
Well, the thing is that a details view is attached to the underlying table. In most cases this is a good thing, because it means you can view the details from different parts of your app without having to rebuild it all the time. So your use case is probably the exception rather than the rule.
I’m not going to attempt to explain it any further, as I’ll probably mess it up. I’ll leave the more detailed explanation to Jeff
I would say, you have the underlying data and with lists you can choose different views on that set of data. Every time you add a list component, it’s a new view on that same set of data. I don’t think it’s an exceptional use case to have different views with the same data. That’s too easy
But I’m going to try your new screen option, thanks!
This helps for now! Thanks!
I think @Darren_Murphy explained it pretty well. Once you know the rules, it’s pretty easy, but feels hard to explain to others.
Here are my general rules. I’ve probably mentioned this a hundred times in the forum, but I never feel like I can explain it clearly enough. (taking suggestions for a better way to word this)
- Top level views (Tabs, ‘Show New Screen’) will always have independent screen layouts. So at that top level, you can change a screen layout, and it won’t affect any other screens.
- Any sub level below that top level (such navigating to the details of a list item, or using the ‘Show Details Screen’ action) will display a screen layout that is permanently attached to the table itself. This is convenient because you can refer to the details screen of that table in several places throughout your app, and you only have to maintain the screen in one place instead of looking for every single detail screen just to make the same change multiple times.
- There are exceptions:
- Turning on ‘Independent Screen Configuration’ on lists will give you independent screen layouts per list item.
- The ‘Show New Screen’ action will ALWAYS give you an independent screen layout, although, if you apply it to a list, every list item will share that New Screen layout within that list.
Once you understand these concepts, you can really exploit them to your advantage. You have much more control of when you want to have a shared detail screen layout throughout the app, or when you want to have a unique and independent screen layout. I’ve recently discovered that I can have reusable custom forms by switching to use ‘Show Detail Screen’ instead of ‘Show New Screen’. My custom form is built from a ‘Show Detail Screen’ action on it’s own table, so my form will always be attached to the table and I can pull up that same form anywhere in the app without having to rebuild it each time. That’s because ‘Show Detail Screen’ uses the layout attached to the table, whereas ‘Show New Screen’ is always a new independent layout.
So in your case, the list layout has nothing to do with the detail layout. Its that fact that you use a ‘Show Detail Screen’ action on the list. This opens the detail layout that is attached to the table. By switching the action to ‘Show New Screen’, you are asking for a new independent detail screen layout specifically for that list. Now, if you ever have to add something to the detail screen, you may need to go into the details of both lists and make your changes, instead of doing it just once if you had used the default ‘Show Detail Screen’ action.
I like to think of a worst case scenario. Imagine the unlikely case where you have a user table with Name, Address, and Email. At some point you add 20 lists throughout your app that are sourced from the same user table. Later, you decide you want to add Phone to your table, and likewise add it to the details screen. If Glide did not share the detail screen layout, then you would have to make the same change 20 times in the app. I think more often than not, people will want that details layout to be shared, so that’s why ‘Show Detail Screen’ is the default action on lists. The great thing is that we DO have a choice either way. You just need to pick the appropriate action for your needs.
Thanks a lot for the explanation, Jeff!
To be sure, so do I understand it right, can I make 5 different-looking lists by using the action ‘new screen’ for all of them?
In that case I’m happy and have nothing to wish for!
Thanks again
Yes, exactly. If you left the default of action of ‘Show Detail Screen’, it would lead to a shared details layout across all 5 lists. If you change the action to ‘Show New Screen → This Item’, then that will lead to a unique details layout for each of the 5 lists.
Thanks so much! This helps so much.
Must have missed the 100 times you explained it
This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.
@Jeff_Hager I think I’m doing something wrong. I chose ‘show new screen’ as an action for a list. And now every click on one of the items in the list leads to the same page with the same info of the item on the top of the list? So it doesnt matter which item on the list I choose, I end up on exactly the same page. Weird. Do you have an idea what I do wrong?
Check your action.
It should be Show New Screen → This Item
I suspect that it is not
Ah ok! This works better, thanks!
It was a search in itself to find ‘this item’ But now I know!
Thanks a lot!