I've been asked to create an iphone app with a left nav/menu. Since there are no native UI components to use for this, I was wondering what would be the best way to achieve this. The only app that I remember that had this kind of thing was the Facebook app from about 18months ago.
Is there a good 3rd party API to handle this kind of thing?
Description of the left nav: There is a permanent left nav along the left of the screen running the full length of the screen. When the user selects a menu option a UIView/UIViewController slide in from the right side and covers over the menu. A little button is left stuck to the left side of the screen. If the user selects this button the view slides back to the right again, and the leftnav menu appears from underneath the view and it is possible to interact with again.
Where is the problem? just create a UIView with subview containing UIButtons, you have to layout the buttons yourself (calculate the frame). Later you add that leftmenuView to the UiViewCobtroller.
Related
I'm working on a GWT application that has the following layout:
- on top there's Menu Bar
- below that screen is separated into two panel by Split Layout Panel
When user clicks on a label in Menu Bar relevant information is show below in the left part of the screen. Then user clicks on an action item on that left part of the screen, and relevant information on that action item is displayed on the right part of the screen.
Clicking on an action item on the right part of the screen may also change relevant information on left part of the screen.
I want to extend on this by giving a possibility to drag/drop the panel on the right part of the screen to another browser tab/window. After that the right and left part of the screen should remain connected as if they are in the same browser tab/window.
Also, that new tab/window should only display that right panel, while Menu Bar and left panel, along with Split Layout Panel should not be present (this is less important but it would be great if it can be done).
Another important thing is that current visual representation of application is not changed but only extended with this functionality.
Is that something that can be done and if it is how to do it?
Thank you for your help.
I think you would have to use "HTML5" native drag and drop to drag between browser instances, so that would limit browser support. Both tabs would already have to have your code loaded into them so they could respond to these events.
If you have a server back end (not just static HTML/JS) then you could communicate via the server. Otherwise maybe "HTML5" client side storage to store blobs of data describing the panel contents. Probably easier re-render in the new browser/tab.
I'd like to create a menu sliding from the top with a list of options.
More specifically, when the user clicks the navigation bar, I would like that a kind of modal view will slide from the status bar to the bottom. The modal will be a tableview.
I'd like something similar to the app Foursquare where (in the explore tab)
if you click the navigation bar a menu, sliding from above, will appear like this:
How can I build such a modal/menu?
Check out DDSlidingPanels on github. There is an example project to help you get started. Is iOS 6+ because it uses nested view controllers and autolayout.
DDSlidingPanels
I like it because:
It is customizable (pull-out tab, position left, right, top, bottom, size of pull-out, supports dragging gestures for pulling down, pushing back, etc.).
It is easy to implement in your own project (the example project is helpful).
I have used it in one of my projects successfully and customized it quite a bit. I don't have any affiliation with the author.
The menu slider that the menu is popping out from the left side of the screen is awesome.
"I was just trying to see how it can be emulated in my application.
Any one has a clue how it can be achieved?"
I want it to look exactly like on the picture, with menu items on the left.
There is a similar Android Question
You can use TabbedPane for that purpose, having left menu populated with set of Actions. However, usage of TabbedPane means you have to use Tabs.
In your case, you'll most likely have to use Actions menu which pops out from the right side as this complies with Blackberry Design Guidelines and fits your goals as I can see it from the screenshot provided better.
I want the address bar to disappear on the iPhone. So far I have used:
window.scrollTo(0, 1);
This hides the address bar when the page is first loaded.
Then I have
document.body.addEventListener('touchmove', function(e){ e.preventDefault(); });
This prevents the user from scrolling back up to the address bar (or anywhere else) while still allowing buttons to be tapped.
But, the address bar still appears when I tap the top of the page. Not sure if this is because I am touching the top of the webpage or because I am touching the bar with the clock and battery.
I'm guessing that the user himself would need to set this option on his phone, although it would be nice if I could control it via the webpage. Is either way possible?
Why? I want to make a web app for a disabled child who has a hard time controlling his movements. I essentially want to turn off any touch actions that aren't related to the web app itself. Otherwise he will accidentally set off lots of unwanted actions. Not sure if this is possible.
I'm afraid you can't hide the status bar. For example in iOS 6 you can, in landscape mode, go full screen, it hides the status bar, but there is a new button at the bottom right of the screen to leave the full screen mode.
What you are asking is not achievable within Safari. But you can develop a simple application full screen (no adress bar, no buttons, no status bar) with a simple UIWebView. This way there will not be any unwanted action.
When you use your safari on iphone, you can see the page control on the right bottom corner.
If you press this button, all pages will show, also they can be edited too.
I try to do the similar thing like this.
I want to press my edit button on the toolbar, then all the subview will appear a delete control on the left top corner(right top corner all ok). I tried to use the tableviewcell(setEditing method), it show the delete control, but isn't appear on the top corner.
Do you have any ideas? Or, Am I doing something wrong by using tableviewcell?
A table-view cell definitely isn't the right approach here. That editing control is a custom one, probably a generic UIButton with a red-encircled X graphic. There isn't a built-in class that'll give you the behavior you're looking for; you'll have to roll your own, probably using a UIScrollView (with pagingEnabled set to YES) with your “page” views laid out in a row inside it.