Tab bar application and UIScrollView

Hi Everyone,
I am creating a tabbar application.
I have 5 tabs already setup, and now one of the tabs needs a few more fields appended to the bottom of the view.
I am using a single NIB file with all the views built inside of it.
What I need to do is take the second tab and add a UIScrollView to it, so I can add the additional fields to the bottom.
I would like to stick with using IB....
Here is the stack I have setup, please advise where I would insert the UIScrollView
App
First Responder
App Delegation
Window
Tab Bar Controller
Tab Bar
Main View Controller (Log)
Selected Main View Controller (Permit)
Scroll View
View
Tab Bar Item (Permit)
Main View Controller (Tags)
Main View Controller (Release)
Main View Controller (Other)
I have placed the ScrollView both within the View, and, as shown, a view as a child of the scroll view...
I have set the height of the view and the scroll view at 800px
Please advise on what I am missing in this.
Thanks
tony

alt-088 wrote:
I have all the views loaded within the same XIB file.
It's usually better to make a separate xib for each view. The most important reason for this is memory management. Firstly, all the views defined in MainWindow.xib are loaded at startup. This means a view will be loaded even if its tab is never selected. Views defined in a separate xib won't be loaded unless and until they're needed.
It's also much easier to unload a view if its defined in a separate xib, since the view, along with all its subviews, can be reloaded at any time by simply reloading the xib (e.g. by initing a new controller with [initWithNibName:bundle:|http://developer.apple.com/iphone/library/documentatio n/UIKit/Reference/UIViewControllerClass/Reference/Reference.html#//appleref/occ/instm/UIViewController/initWithNibName:bundle:]). This is especially important when the controller receives a low memory warning. For example, the default implementation of [didReceiveMemoryWarning|http://developer.apple.com/iphone/library/documentatio n/UIKit/Reference/UIViewControllerClass/Reference/Reference.html#//appleref/occ/instm/UIViewController/didReceiveMemoryWarning] will unload a view defined in a separate xib because the method knows how to reload that view.
Another reason for separate xibs is that the main xib needs to be loaded before the app can launch. Anytime you remove an object from MainWindow.xib, you'll reduce launch time.
should i have a view for each of the tabs in the main form?
You probably already have a view for each of the tabs, so I assume you meant to ask, "Should i have a separate xib file for each controller which is connected to the tab bar controller in MainWindow.xib?"
If I restated the question correctly, the answer is yes, as explained above.
Note the Tab Bar App template demonstrates both ways to define each controller's view. The first view controller's view is defined in MainWindow.xib. The second controller's view is defined in SecondView.xib. The difference between these setups can be seen in the Attributes Inspector. If you select the First View Controller (most easily done in the xib (icon) window if the View Mode switch is in the Center position to display the view hierarchy) and open the Attributes Inspector, you'll see the NIB Name selection is blank. If you then select the Second View Controller, the NIB Name selection will be "SecondView".
You could move the First View Controller's view to a separate xib by making a new xib named "FirstView.xib" (File->New File..->iPhone OS->User Interface->View XIB), deleting the View object under the First View Controller in MainWindow.xib, and then setting the NIB Name selection in the Attributes Inspector to "FirstView". After that, open FirstView.xib, select File's Owner and set its Class to FirstViewController in the Identity Inspector, then connect the View object to the 'view' outlet of File's Owner.
You can make a separate xib for any of your views in the same way. Of course in the case of a scrolling view, you would add a UIScrollView object and connect it to the 'view' outlet of File's Owner, then connect the UIView object to the 'contentView' outlet of File's Owner as discussed previously (after setting the Class of File's Owner to a custom class that has a contentView IBOutlet).
Whenever you make a separate xib for one of your views, _make sure File's Owner is set to the same class as its parent controller object in MainWindow.xib_.
\- Ray

Similar Messages

  • Tab Bar Application save order

    Hi,
    I am creating a Tab Bar application with 8 Tabs. As usual, at the fith tab, the More appears. When the user goes there, he/she can modify the order of tab bars, as he/she wants.
    My problem is, that I want to save the order of these tabs, and display it in the same order, when the user opens the app again.
    I am using storyboard, so the views are created, and hooked up over there.
    The AppDelegate looks like this:
    //  AppDelegate.h
    #import <UIKit/UIKit.h>
    @interface AppDelegate : UIResponder <UIApplicationDelegate, UITabBarControllerDelegate>
    @property (strong, nonatomic) UIWindow *window;
    @end
    //  AppDelegate.m
    #import "AppDelegate.h"
    @interface AppDelegate()
    @property (nonatomic, retain) UITabBarController *mainTabBarController;
    @end
    @implementation AppDelegate
    @synthesize window = _window;
    @synthesize mainTabBarController;
    - (void)customizeInterface
        UIImage* tabBarBackground = [UIImage imageNamed:@"tabbar.png"];
        [[UITabBar appearance] setBackgroundImage:tabBarBackground];
    #pragma mark UINavigationControllerDelegate
    - (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
        [[NSUserDefaults standardUserDefaults] setInteger:mainTabBarController.selectedIndex forKey:@"mainTabBarControllerSelectedIndex"];
    - (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
        [[NSUserDefaults standardUserDefaults] setInteger:mainTabBarController.selectedIndex forKey:@"mainTabBarControllerSelectedIndex"];
    #pragma mark UITabBarControllerDelegate
    - (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController {
        [[NSUserDefaults standardUserDefaults] setInteger:tabBarController.selectedIndex forKey:@"mainTabBarControllerSelectedIndex"];
    #pragma mark UITabBarControllerDelegate
    - (void)tabBarController:(UITabBarController *)tabBarController didEndCustomizingViewControllers:(NSArray *)viewControllers changed:(BOOL)changed {
        int count = mainTabBarController.viewControllers.count;
        NSMutableArray *savedTabsOrderArray = [[NSMutableArray alloc] initWithCapacity:count];
        for (int i = 0; i < count; i ++) {
            [savedTabsOrderArray addObject:[NSNumber numberWithInt:[[[mainTabBarController.viewControllers objectAtIndex:i] tabBarItem] tag]]];
        [[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithArray:savedTabsOrderArray] forKey:@"tabBarTabsOrder"];
        [[NSUserDefaults standardUserDefaults] synchronize];
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
        [self customizeInterface];
        NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
        mainTabBarController.delegate = self;
        int count = mainTabBarController.viewControllers.count;
        NSArray *savedTabsOrderArray = [defaults arrayForKey:@"tabBarTabsOrder"];
        if (savedTabsOrderArray.count == count) {
            BOOL needsReordering = NO;
            NSMutableDictionary *tabsOrderDictionary = [[NSMutableDictionary alloc] initWithCapacity:count];
            for (int i = 0; i < count; i ++) {
                NSNumber *tag = [[NSNumber alloc] initWithInt:[[[mainTabBarController.viewControllers objectAtIndex:i] tabBarItem] tag]];
                [tabsOrderDictionary setObject:[NSNumber numberWithInt:i] forKey:[tag stringValue]];
                if (!needsReordering && ![(NSNumber *)[savedTabsOrderArray objectAtIndex:i] isEqualToNumber:tag]) {
                    needsReordering = YES;
            if (needsReordering) {
                NSMutableArray *tabsViewControllers = [[NSMutableArray alloc] initWithCapacity:count];
                for (int i = 0; i < count; i ++) {
                    [tabsViewControllers addObject:[mainTabBarController.viewControllers objectAtIndex:
                                                    [(NSNumber *)[tabsOrderDictionary objectForKey:
                                                                  [(NSNumber *)[savedTabsOrderArray objectAtIndex:i] stringValue]] intValue]]];
                mainTabBarController.viewControllers = [NSArray arrayWithArray:tabsViewControllers];
        // Override point for customization after application launch.
        return YES;
    - (void)applicationWillTerminate:(UIApplication *)application {
        [[NSUserDefaults standardUserDefaults] synchronize];
    - (void)applicationWillResignActive:(UIApplication *)application
         Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
         Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
    - (void)applicationDidEnterBackground:(UIApplication *)application
         Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
         If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
    - (void)applicationWillEnterForeground:(UIApplication *)application
         Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
    - (void)applicationDidBecomeActive:(UIApplication *)application
         Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
    - (void)dealloc {
    @end
    This is where I am currently, and it is not working.
    I checked the .plist file, and there is no entry called tabBarTabsOrder, so it is not evan saving it.
    I'm really confused at this point, got no idea what to do.
    Does anyone know, ehat's the problem? What am I missing?
    Thank you very much in advance!
    Daniel

    This works in a project created from the Tabbed Application template. I set the tag on each TabBarItem in the storyboard.
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
        UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;
        tabBarController.delegate = self;  // couldn't figure out how to do this in the storyboard
        [self orderTabBar:tabBarController];
        return YES;
    - (void)orderTabBar:(UITabBarController *)tabBarController {
        NSArray *tabsOrderArray = [NSUserDefaults.standardUserDefaults arrayForKey:@"tabBarTabsOrder"];
        if (tabsOrderArray) {
            NSMutableArray *orderedViewControllers = [[NSMutableArray alloc] initWithCapacity:tabBarController.viewControllers.count];
            for (NSNumber *tabOrder in tabsOrderArray) {
                [orderedViewControllers addObject:[self viewControllerForTabBar:tabBarController TabBarItemTag:tabOrder.integerValue]];
            tabBarController.viewControllers = orderedViewControllers;
    - (UIViewController *)viewControllerForTabBar:(UITabBarController *)tabBarController TabBarItemTag:(NSInteger)tag {
        for (UIViewController *viewController in tabBarController.viewControllers)
            if (viewController.tabBarItem.tag == tag)
                return viewController;
        return nil;
    - (void)tabBarController:(UITabBarController *)tabBarController didEndCustomizingViewControllers:(NSArray *)viewControllers changed:(BOOL)changed {
        NSMutableArray *tabsOrderArray = [[NSMutableArray alloc] initWithCapacity:tabBarController.viewControllers.count];
        for (UIViewController *viewController in viewControllers) {
            [tabsOrderArray addObject:[NSNumber numberWithInt:viewController.tabBarItem.tag]];
        [NSUserDefaults.standardUserDefaults setObject:[NSArray arrayWithArray:tabsOrderArray] forKey:@"tabBarTabsOrder"];
        [NSUserDefaults.standardUserDefaults synchronize];

  • When ever I customize the toolbar the open new tab sign that is the + sign near the lastly opened tab in the tab bar disappears and it remains so even after restarting Firefox.

    When ever I customize the toolbar, the open new tab sign that is the + sign near the lastly opened tab in the tab bar disappears and it remains so even after restarting Firefox. This happens only after updating to the new version 4.0.1 it never happened in the older versions 3.x.xx- checked it thrice. Thought it could be a bug and i didn't know where to report also don't have time and patience to search for the appropriate page so i'm reporting here for improving my favorite browser.

    You can find the New Tab button showing as a '+' on the Tab bar.<br />
    You can open the Customize window and drag the New Tab button from the Tab bar on another toolbar and it will become a regular toolbar button like the New Tab button that you have in Firefox 3 versions.<br />
    If you want the New Tab button at the far right end of the Tab bar then place a flexible to the left of it.<br />
    *New tab toolbar button: https://addons.mozilla.org/firefox/addon/new-tab-toolbar-button/

  • Tab Bar Control and the Default "More" Behavior

    I've got a client who wants an app with 8 tabs. The only problem is that they don't like the default "more" behavior with the tableviewcontroller containing the extra tab content. What they want is to hit "more" to see the next four tabs replace the first four and then to toggle back if it's hit again.
    There are a few ways to do this, I guess. I could build a second viewcontroller/tabcontroller that comes on or leaves when "more" is touched. Is there a surer way of doing this? I'm sure I'm missing something basic, but I've googled my brains out on this one and just can't see it.

    You could use one TabbarController with 8 ViewControllers, and rotate them when the More tab is tapped:
    - (BOOL)tabBarController:(UITabBarController *)tbc shouldSelectViewController:(UIViewController *)vc {
    if (vc == tbc.moreNavigationController) {
    NSMutableArray *newVCs = [[NSMutableArray arrayWithCapacity:8] retain];
    for (int i = 0; i < 8; i++) {
    [newVCs addObject:[tbc.viewControllers objectAtIndex:(i + 4) % 8]];
    tbc.viewControllers = newVCs;
    [newVCs release];
    return NO;
    } else {
    return YES;

  • Problem with tab bar and the method viewDidLoad

    Hi,
    I created a new project from the templates (tab bar application). then I created two views, for the two itens on the bar. The second view controller has a method viewDidLoad, but the method is loaded when the program launches. I tried the loadView method, but it´s never called.
    How can i know when the view is loaded through a tab bar item?
    thanks

    I have an application based on the Tab Bar template as well, yet mine works. I also have views created via IB for each tab, but there are a series of connections which need to be made for the viewDidLoad method to be called. I made some notes along the way, perhaps they are helpful.
    In these notes, what I did was create the Tab Bar project, but I didn't like the way the views were set up, so I created a series of new views, added them the way I preferred (all from files, all the same view, including the first view), and then deleted the two default views.
    - Create a Tab Bar project.
    - With XCode, create a new UIViewController for the new first view, save it, add it to the project.
    - In IB, create a new view, save it, and add it to the project.
    - In the new view's File's Owner, set the class to the new view controller.
    - Connect the view outlet to the new view created.
    - Go to the tab bar control in the MainWindow.xib and create a new view controller.
    - Select the new tab button, and type in tab name and xib filename (without the extension).
    - Compile and run. With a label in the new view, it is easy to see if it works.
    Let me know if you find the problem.

  • Different Text Size for different mobile devices and Tabbed View Application

    Hi,
    I am developing an sample mobile application to target all mobile devices (IPhone/IPad/IPod and Android).
    I am facing an Issue that i am using default text size for the TextInput, TextArea and label but text size look so small for some devices, i discuss this with some(unkown) person(he is an IPhone developer).
    He told me that in Iphone development for different devices they use different text size.
    So how would I do the same at our Flex Mobile application ?
    Please provide me help regarding this
    There is one more problem in the application. I have tabbed view application, and i assign the firstview of the tab after 10 or more seconds of interval so that data will load in the application properly.
    But issue is that my first tab is not show anything at first go. When we switch the tab then it loads the screen and application work fine.
    Please provide me any help so that i can see the first Tab Screen.
    Thanks

    Hi there. For your font issue you need to set up a variable call it var fontSize or something. Then have an if statement that reads something like if (stage.stageWidth <= 320) fontSize=8 else if (stage.stageWidth > 320 || stage.stageWidth <= 640) fontSize = 12.
    Then instead of giving your font a size give it the size of fontSize variable and it will check for stage width or whatever you base it on and apply that size to your text field.
    I had done this for an app I did for Kellogg Garden Products but if you notice when you go from portrait to landscape mode the font size increases using this technique.
    http://itunes.apple.com/us/app/kellogg-garden-products-soil/id440522636?mt=8

  • RSS Table View with Tab Bar Code Error

    I created an iphone app with a navigation controller that has a table view which displays an rss feed. My client wants it able to display multiple rss feeds through a tab bar. I have attempted several times and have messed up. If anyone could help me with this it would be greatly appreciated.

    Hi Guy, and welcome to the Dev Forum!
    I would recommend starting as follows:
    1) Start a new project with the Tab Bar Application template;
    2) Open MainWindow.xib and select Window->Document from the IB menu to make sure the xib window (the icon winow) is visible;
    3) Locate the "View Mode" switch in the upper-left corner of the xib window and make sure it's in the Center position to display a 2-column table showing the view hierarchy as a tree of small icons to the left;
    4) Expand the Tab Bar Controller branch, then delete (select and Edit->Delete) each of the two view controllers under the Tab Bar Controller. The only child of that controller should now be the Tab Bar;
    5) Open the Library window (Tools->Library), drag a Navigation Controller into the xib window and drop it when it's on top of the Tab Bar Controller icon;
    6) Repeat step 5 until you have as many nav controllers (one for each RSS feed) as you want (for this example, assume 4 RSS feeds);
    7) The Tab Bar Controller should now have 5 children: the Tab Bar plus the 4 nav controllers; if not, drag the nav controllers until each of their icons is shown indented under the Tab Bar Controller just as the Tab Bar is;
    8) Expand the first Navigation Controller branch, and expand it's Root View Controller; you should now see that root controller's Navigation Item;
    9) Select the nav item, open the Attributes Inspector (Cmd-1), and change the Title to "RSS 1 Root";
    10) Repeat 8-9 for the remaining 3 nav controller branches, so the root views will be labeled "RSS 2 Root", ... "RSS 4 Root" respectively;
    11) Save the xib, return to Xcode, and click "Build and Go". The project should build and run without any warnings or errors. If not, return to step 1 and try to see where things went wrong.
    Let us know if you need more help after you get the above skeleton app working. The next step will be to change the class of the "RSS 1 Root" controller to the class of the first table controller in your original project, and to add that controller's xib (you can delete FirstViewController.h/.m and SecondView.xib by selecting each in the Groups & Files tree of the Xcode project window and selecting Edit->Delete).
    Please avoid the temptation to merge the above steps into your original project. In my experience, moving each of your files into the new skeleton, and testing at each buildable stage will reduce the chances for error while making it easier to spot any incompatibilities in your old code. The process shouldn't involve touching any of your XML parse or table display code, but you may need to override some additional table view controller methods such as viewWillAppear:
    Btw, in case this hasn't been discussed yet, be aware you'll face a major decision soon: When tabbing to feed no. 2, what happens on the return to feed no. 1? If the user will return to the same detail view that was last displayed, you might need lots more memory and there will be lots more to go wrong. If the user will return to the home menu, the whole project will be much simpler. Estimate your effort accordingly.
    Also be prepared for your client to say something like this during beta: "Oh... one or two of the links in feed no. 3 might be a mp3 or mp4 next month. That won't be a problem, will it?".
    Hope that helps!
    \- Ray

  • Tab bar based app, with 4 tabs each linking to a different navigation menu

    Hi,
    Im new to coding and I was wondering if anyone could help me out with a problem im having. Im trying ot get 4 tabs accross the bottom in a tabbar with each one linking to a navigation page. Im trying to get 5 topics on each navigation page which go into more detail to another page when clicked. so 4 tabs x 5 topics x 5 more detailed topics. I have tried the O'Rilley tutorial and could make a tabbar with 2 tabs. but I cant do 4, can anyone help?
    Thank you all in advance.

    Hi Sunny, and welcome to the Dev Forum!
    If you're using [Elisabeth Robson's tutorial|http://broadcast.oreilly.com/2009/06/tab-bars-and-navigation-bars-t.ht ml], it looks like a nice job (for a different tutorial, please let us know if we can find it online). I generally start with the Tab Bar Application template, since it does almost all the work of setting up the skeleton. But you'll certainly learn more starting with the minimal, Window-based App template, which is the purpose of a tutorial.
    The easiest way to add a new tab is to find the required controller type in the Library and drag it into the tab bar. I think you want a UINavigationController there, so choose that one from the Controllers section of the Library. You can drag the nav controller icon into either window (i.e. the Tab Bar Controller editor window or the xib window). When dragging into the xib window, you can choose the new controller's position by where you drop it in the small icon tree. (Btw, I might have missed this in the tutorial, but make sure the xib window is displaying two columns with a small icon tree to the left. This is done by setting the View Mode switch to the center position). You can also add tabs by opening the Attributes Inspector when the tab bar controller is selected and clicking "+" under the View Controllers table.
    Once you have your additional nav controllers added, build onto each one the same way you did with tab 2. If that's the only place you were stuck, you should be on your way in a few minutes.
    \- Ray

  • XCode4.6 Adding Navigation controller in Tab Bar

    Hi All,
         Iam a beginner in IOS development.
    I have installed XCode4.6 in Mac OS X Lion.
    As a part of my project, I started implementing navigation controller in Tab Bar.
    So I created a project with template as "Tab Bar Application".
    Then I created "FirstView" derived from UIViewController.
    Modified the AppDelegate.m as below:
    When I run the application, two tabs are displayed: "First" and "MyCutomView"
    First is the title of the FirstViewController that the template created by default.
    "MyCustomView" is the title of my custom navigation controller.
    When I click the tab "MyCustomView" Iam getting the following exception:
    In main() ---> @autoreleasepool ---> return statement. The xception message says "Thread 1: SIGNAL SIGABRT"
    Is anything Iam doing wrong?
    Is this feature not supported in XCode4.6?
    Looking forward for your guidance,
    Vidhya

    Hi,
    does the nib-file of ViewController "FirstView" really is called "Navigation Controller"?
    Dirk Mika

  • HidesBottomBarWhenPushed does hot let tab bar appear when view is pop

    Hi,
    I am currently making a simple Navigation-TabBar application.
    I only have two level in this application.
    root level and 2nd level.
    my objective is to hid the tab bar for the 2nd level.
    what I did is that in the didSelectRowAtIndexPath method in the root level, did this
    [self setHidesBottomBarWhenPushed:YES];
    [self.navigationController pushViewController:computer animated:YES];
    when I run it, this application hides the tab bar when it pushes 2nd level view.
    but when i get back to the root view, the tab bar remains hidden.
    I have looked at the sample code given by apple "iPhoneCoreDataRecipes"
    In their application, when I clicked the image in a recepe, it would hide the tab bar.
    And when I go back to the level above, the tab bar would show up again.
    I tried to look at their code and see what's the difference, but I couldn't figure out.
    So how to fix this problem?

    Hi,
    you need to set the hidesBottomBarWhenPushed-property of the viewController which is beeing pushed:
    [compuer setHidesBottomBarWhenPushed:YES];
    [self.navigationController pushViewController:computer animated:YES];
    Regards
    Dirk

  • Trouble adding new view to tab bar

    Hello All,
    I am trying to build a first Tab Bar Application through Interface Builder. I created a stock Tab Bar application using XCode but I am having trouble replacing the views with different ones (mine).
    For example, I have created a new view called PostView from XCode with just a simple label. I then went to Interface Builder, clicked on the second tab, and go to Tools->Attribute Inspector and change the NIB name from SecondView to my new PostView.
    However, when I run this, it crashes when I click on the the second tab with the following error in GDB:
    2008-06-30 23:22:26.623 TG2[5855:20b] * Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UIViewController loadView] loaded the "PostView" nib but no view was set.'
    I can't for the life of me figure out where I should be loading or setting this view as SecondView doesn't seem to be programmatically loaded anywhere and I can't seem to find any other reference to it in IB.
    I'm sure this is noob easy -- any ideas?
    Many thanks in advance,
    Tim

    First of all, click on File's Owner in the PostView.xib window. In the inspector window (it's on the right by default--if you don't see it, press Cmd-Shift-I), click the "i" button to display the Identity pane. There should be a drop down box labeled "Class". Is the class set to your controller class? If not, adjust it so it is.
    Next, click the blue circle with the white arrow. This will bring up the Connections pane. Look at the line that says "view". Is it connected to anything? (If it is, the name of the object it's connected to will appear next to it, with an "x" to undo the connection.)
    If not, hold down the circle to the far right of "view", then drag to the "View" icon in the PostView.xib window. (I'm assuming you haven't renamed the view.) A box should appear around the icon if it's the right type for that outlet. Now let go, and Interface Builder will establish the connection.
    Save, then go back to Xcode and build and run your project. Did that fix the problem?

  • How do I turn off the tab bar in FF 24 when only one window is open?

    I have just updated to FF 24.0 from FF 20 with Tab Mix Plus already installed. (OSX 10.6.8) From the Firefox Preferences menu, Tabs box, I have set the "Hide the tab bar:" option to "When I have only one tab." I have also gone to the Tab Mix Plus option box and set the drop down to the same value. Unfortunately, it doesn't have the desired effect. Firefox opens to my home page with a tab at the bottom. (I prefer the tabs at the bottom and that setting still works.) With only one page open, that tab is completely unnecessary, takes up space, and just plain bugs me.
    Now, here's what I have found. Once I've started Firefox, if I go to the Tab Mix Plus options box and select "Hide the tab bar: Always" and then set the option back to "When I have only one tab" I can enjoy one page without the tab bar, that is, until I've opened several tabs and then closed all but one. Then I see the tab bar stubbornly remain. An incompatibility between FF and Tab Mix Plus, perhaps. Is FF 24 not letting Tab Mix see the number of open tabs? Dunno. But I can't seem to solve it.

    Are you saying that the problem lies not with Firefox but with Tab Mix Plus? Tab Mix worked up through FF 20 to my knowlege. And I see from other questions that the persistant tab bar was an issue with FF 23 as well.
    Please note, that setting aside the extension issue, the Firefox preference Tab option should turn off the tab option when there is only one window open without any help from addons or extensions. I have disabled Tab Mix Plus, and set the FF option correctly, but the problem remains. As I see it, FF is not working as this user expects it to and is (slightly) broken.

  • The font in Safari's bookmarks bar and tabs bar has suddenly changed

    The font in Safari's bookmarks bar and tabs bar has suddenly changed to a lighter font.  How do I change the font back?  I'm not speaking of the font size/type in the web browser in viewing web pages, but the font in the application itself has changed. It's rather annoying and would like to be able to change it back!  I'm running Safari v5.1.7

    OK, Margie, here's what to do . . .
    First Quit Safari.
    Then Find your User's (Home) folder library. 
    It's hidden, but here's how you find the Home Library:
    Click on the desktop to get the Finder menu.  Then go up to  "Go" in the menu bar, while holding down the option key.
    You'll now see the User Library in the drop down list. Open it, then look for the Fonts folder.
    Take the fonts folder to the desktop.
    Restart Safari.
    Any better?
    (Warning:  This is only for the Users/Home > Library > Fonts folder.  Under no circumstances, should this be done with the SYSTEM > Library > Fonts folder.) 

  • Link in new tab opens blank and "javascript:subValue(1)" is seen in the address bar.

    On a specific website, when I left click a link it opens but when trying to open the link in a new tab, the new tab opens blank and "javascript:subValue(1)" is seen in the address bar. This website hosts many, many images which I hope to download using a bulk image save addon but those images must first be in separate tabs. Opening these links in new tabs is vital to the process.

    Certain Firefox problems can be solved by performing a ''Clean reinstall''. This means you remove Firefox program files and then reinstall Firefox. Please follow these steps:
    '''Note:''' You might want to print these steps or view them in another browser.
    #Download the latest Desktop version of Firefox from http://www.mozilla.org and save the setup file to your computer.
    #After the download finishes, close all Firefox windows (click Exit from the Firefox or File menu).
    #Delete the Firefox installation folder, which is located in one of these locations, by default:
    #*'''Windows:'''
    #**C:\Program Files\Mozilla Firefox
    #**C:\Program Files (x86)\Mozilla Firefox
    #*'''Mac:''' Delete Firefox from the Applications folder.
    #*'''Linux:''' If you installed Firefox with the distro-based package manager, you should use the same way to uninstall it - see [[Installing Firefox on Linux]]. If you downloaded and installed the binary package from the [http://www.mozilla.org/firefox#desktop Firefox download page], simply remove the folder ''firefox'' in your home directory.
    #Now, go ahead and reinstall Firefox:
    ##Double-click the downloaded installation file and go through the steps of the installation wizard.
    ##Once the wizard is finished, choose to directly open Firefox after clicking the Finish button.
    Please report back to see if this helped you!

  • Integrate search bar field into tab bar like in APEX4 application builder?

    Hi,
    i wonder how i can integrate the search bar of my application in the "tab bar".
    Is this possible?
    If you don't know what i mean call the Application Builder of Apex 4 and see the search bar on the top right.
    Thank you
    Regards
    Daniel

    *1)* <u>Page Template modification</u>
    Modify the page template(s) of all pages which uses the search region and add a holder element for the item in it. Position the holder appropriately within the template.
    For instance my page template's body section has this code segment for the displaying the tabs (it could be slightly different depending on your tehems, but the classnames should remain the same, so you can spot them easily)
    &lt;div class=&quot;bg&quot;&gt;
          &lt;div class=&quot;tab-holder&quot;&gt;
            &lt;div class=&quot;first-current&quot;&gt;
                &lt;div&gt;
                   &lt;span&gt;Hrm&amp;nbsp;Roster&amp;nbsp;Zero&lt;/span&gt;&lt;a tabindex=&quot;999&quot; href=&quot;javascript:popupURL('f?p=4000:334:6871592301983461::::P334_ID,FB_FLOW_ID,FB_FLOW_PAGE_ID:9973103015616704478,50506,1');&quot; title=&quot;Edit&quot; class=&quot;eLink&quot;&gt;&lt;img class=&quot;eLink&quot; alt=&quot;Edit&quot; src=&quot;/i/e.gif&quot;&gt;&lt;/a&gt;
                   &lt;/div&gt;
                &lt;/div&gt;
          &lt;/div&gt;
        &lt;/div&gt;
    ..After adding the search bar holder( <b>&lt;div id=&quot;SEARCH_BAR&quot; style=&quot;float:right&quot;&gt;&lt;/div&gt;</b>) it would look like
    &lt;div class=&quot;bg&quot;&gt;
          &lt;div class=&quot;tab-holder&quot;&gt;
            &lt;div class=&quot;first-current&quot;&gt;
                &lt;div&gt;
                   &lt;span&gt;Hrm&amp;nbsp;Roster&amp;nbsp;Zero&lt;/span&gt;&lt;a tabindex=&quot;999&quot; href=&quot;javascript:popupURL('f?p=4000:334:6871592301983461::::P334_ID,FB_FLOW_ID,FB_FLOW_PAGE_ID:9973103015616704478,50506,1');&quot; title=&quot;Edit&quot; class=&quot;eLink&quot;&gt;&lt;img class=&quot;eLink&quot; alt=&quot;Edit&quot; src=&quot;/i/e.gif&quot;&gt;&lt;/a&gt;
                   &lt;/div&gt;
                &lt;/div&gt;
          &lt;/div&gt;
          &lt;div id=&quot;SEARCH_BAR&quot; style=&quot;float:right&quot;&gt;&lt;/div&gt;
        &lt;/div&gt;
    ..*2)* Now <u>to move your search item to the "SEARCH_BAR"</u> region.
    Assuming that the item name is P0_SEARCH_ITEM
    <script>
    $(document).ready(function(){
      $('#P0_SEARCH_ITEM').appendTo('#SEARCH_BAR');
    </script><li>If the search item is a page zero item and hence has the same name in all pages , then the JS code to move it, is the same irrespective of the page and can therefore be added to page template.
    You can add that whole block to the page template(s) header section(or even the body).
    <li> If the item names differ with page, then modify the item name appropriately for each page and add the code to the page header.

Maybe you are looking for

  • Self assigned IP : still no bug fix ?

    I have a problem for a long time with my Time Capsule. I use an ADSL modem and router (from Free French ADSL Provider) and my TC is plugged on it and set to "Bridge" mode. I have many devices wired and wireless on the TC. But I have a big problem, so

  • Help,how close pop-up window ,and open another view

    Hello, How click the pop-up window button ,then close the pop-up window . At the same time open another VIEW,and  transfer PO number to the VIEW. thanks

  • Use Siri and older voice command at the same time?

    Hi all, It is my understanding that Siri cannot be used simultaneously with the older version voice command. If I wish to use the older voice command function, I have to deactivate Siri, which is terribly incovenient. Is there any way I can use both

  • Removing the entity object commit from transaction handler

    Hi, The business reuirement of the OAFWK page developed by us is as explained below: The basic functionality is of updating the attributes of items attached to the change order. The UI components displayed in the page(Item attribute changes region) a

  • How can I recover my administrative password?

    How can I recover my administrative password without paying a fee?