In iOS, what do you call that element that attaches to the top of the screen when you scroll past it in a list (think the single letters in the Contact List). This is driving me nuts.
i'm not sure this is even a full question, but the answer is 'section'. If you're table style is plain, the section title will behave like the A-Z in the iPhone contacts screen
http://developer.apple.com/library/ios/documentation/UIKit/Reference/UITableViewController_Class/Reference/Reference.html
It is the section header of a UITableView.
Its appearance depends on the tableview style.
Like in the contacts app, like header stay at the top of the section unless the top of the section is off the screen and there are rows in the section which are still visible.
Like in the settings app the header just appears as text on the striped background and scrolls with the table view no matter what. It doesn't ever get attached to the top.
Related
Is there anyway this doesn't happen?
I have a label that adjusts to its content but if I put it inside a group I'm not allowed to scroll, or even if I put a table inside a group (the group not reaching the page dots) I can't scroll.
You could define a spacing between the picture and the text so that the dots have black background. Look at the activity app how they do so the dots won't be in the way. However the dots seems to always be there if you have a page based app.
WatchOS is still limited on its UI customisation. Your approach is correct but we just can provide so complex layouts yet (Table inside group with bottom margin). I'm sure WatchOS 3 will bring new additions.
Background: I have implemented a standard tableView that has 4 sections. Each of the section contains a custom view for the header. Normally, the previous header will be pushed away when the header below is scrolled to the top of the tableView.
Question: Is it possible to prevent that "pushed out" behavior. I would like something along the line of "stacking" behavior. This is because I would like the user to have the full view of what headers are available. For example, if one scroll to the lowest cell, one will see all headers on the top of the tableView.
Additional Info: Please do not answer with hacks, for example, track the movement of the tableView, add the header view manually when needed, then resize the tableView.
It's not possible without using methods like you describe. At least not with the built-in table view.
One reason is that it just doesn't scale to arbitrary content. If you let section headers stack up what should happen when the entire screen is full of headers? How would the user be able to comfortably see and interact with the content under the 6th or 7th section when there is only a few pixels left to show the content because the rest of the screen is taken up by header for sections that the user is obviously not interested in.
You probably want to rethink your UI. Either go with the standard section headers, make some cool light-weight tabs, a custom harmonica control or something entirely different. Maybe even a hierarchical structure depending on the amount of content you want to present.
I am trying to do something like what FaceBook has done. Whereby it limits the number of cells it display. If the user would like to more items, he/she will scroll down the tableview and it will display more.
How do I go about doing so? Any tutorial out there? Sorry but I didn't know what to search for.
This behaviour is implemented in STableViewController.
It basically checks the scroll position of the underlying UIScrollView of the UITableView to see whether it has reached the end of the page and then loads more content if it has. It also uses a custom tableFooterView to indicate that it is loading content.
From the docs:
In the plain style, section headers
and footers float above the content if
the part of a complete section is
visible. A table view can have an
index that appears as a bar on the
right hand side of the table (for
example, "a" through "z"). You can
touch a particular label to jump to
the target section.
I find that very hard to grasp. First, this one:
if the part of a complete section is visible
What do they mean by this? This is paradox. Which one is it?
A) Table must be exactly the height of that section. If I have 5 Rows, and each row is 50px high, I must make it 5*50 high. The full section must be visible on the screen. Otherwise, if I have 100 rows but my table view is only 400 high, this will not apply. Nothing will float above my content. Sounds wrong.
B) It doesn't matter how high my table view actually is. Header and Footer is floating above the content and I can scroll the section. Makes more sense. But is completely against this nonsense making sentence: 'if the part of a complete section is visible'
And: What sense does it make when Section Headers / Footers float above the section content when there are multiple sections with Header / Footer? The user would have to scroll to death until reaching the end of first section, until the whole thing can move to the second section? Or could she drag the header / footer to move on?
Can anyone explain it better than they did?
It's easiest to explain through an example. Launch your Contacts app and scroll through your contacts. That's a UITableView with UITableViewStylePlain. The table has one section per letter. You can see the gray section headers "floating" above the table, meaning that once a section header reaches the top of the view, it remains in place while the table view scrolls underneath it. When the last cell from a section scrolls off the top of the view, the section header scrolls off the view along with it.
I want to introduce a custom pencil accessory image in a tabel cell and in the standard accessory righthand UITableViewCell position. The pencil image will be used to indicate that the text in the table cell can be edited via a popup modal full screen view.
Will Apple penalize this innovation during the app review process?
My justification is that the standard disclosure indicators do not convey the right meaning. According to the Apple HIG doc the ">" disclosure should present another more detailed list view and the the blue "+" disclosure button should reveal extra details about the selected table row.
I feel that opening a text edit view falls between the ">" and "+" usage, hence my pencil image idea.
Edit: Just to complete the picture, the table view has two fat rows. The upper row poses a multiline question and the lower row shows a text answer.
I don't think that Apple would penalize you for creating a custom button/icon. This is not something to concern. The problem here is to make you user understand what is the function of you custom icon, since they are used with the standard iPhone UI.
I my opinion for the functionality that you want to put on your icon, it would be better if you use the custom UI for editing table cell, that is presented on this image that I could find Googling (http://adeem.me/blog/wp-content/uploads/2009/UITableView/AddDeleteReorderUITableView/Picture%202.png).
So, people are used to edit the content of table cells by using the edit button and after pick the current cell...than you can show the modal view, so the user can edit the content.
To have a better picture, compare your table cell with, for example, the Clock app.
Try to avoid custom controls as much as you can. if something exists on the standard UI, go for it it is easy for people to look and understand.
Imagine that in your browser the load icon, instead of this circular arrow, it was changed by "L" in the latest update, would be something tricky to us to understand a non-standard symbol.
Think about it and chose the most appropriated approach for your purpose.
Cheers,
VFN