11 berichten aan het bekijken - 1 tot 11 (van in totaal 11)
  • Q:
    Bijdrager
    Luuksweb

    Verwijderen van 'Wijzig' knop

    Goedemiddag,

    Ik ben bezig met het ontwikkelen van een app.
    Daarbij gebruik ik de Tap Bar.
    Nu wordt de ‘Meer’ knop weergegeven, dit is geen probleem, maar daarbij wordt automatisch de ‘Wijzig’ knop weergegeven.
    Die ‘Wijzig’ knop zou ik graag willen verwijderen.
    Ik heb al heel wat dingen geprobeerd die ik op Google heb gevonden, maar het werkte allemaal niet.
    Zou iemand mij kunnen helpen?

    Alvast bedankt.

    Met vriendelijke groet,
    Lukas Goes

    Inactief
    Anoniem
    Bijdrager
    Luuksweb

    Nee, helaas niet.:(
    Voor de duidelijkheid ik bedoel dus waar de gebruiker de Tap Bar zelf kan indelen.
    Dit wil ik graag uitzetten.

    Met vriendelijke groet,
    Lukas Goes

    Bijdrager
    jandoornbos
    Bijdrager
    Luuksweb

    Jan Doornbos, heel erg bedankt voor je link.

    Ik heb dit in AppDelegate.m gezet:

    <br />
    - (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController<br />
    {<br />
    tabBarController.NaviController.navigationBar.topItem.rightBarButtonItem = nil;<br />
    }<br />
     

    En deze code in AppDelegate.h gezet:

    <br />
    @property (strong, nonatomic) UITabBarController *Navicontroller;<br />
     

    Maar ik krijg deze melding: ‘Property ‘NaviController’ not found on object of type ‘UITabBarController *”.
    Ik heb de codes toch wel in de goede bestanden gezet?
    Of heb ik ergens een fout gemaakt?

    Ik hoop dat iemand mij kan helpen.

    Met vriendelijke groet,
    Lukas Goes

    Inactief
    Anoniem

    Allereerst, property namen kunnen niet met een hoofdletter beginnen, dus je kunt beter naviController gebruiken. Heb je ook een @synthesize voor de controller in AppDelegate.m gezet, en de controller in IB met de FileOwner verbonden?

    De code zou ik zo doen:

    <br />
    - (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController<br />
    {<br />
      if (tabBarController == self.naviController)<br />
      {<br />
        tabBarController.navigationBar.topItem.rightBarButtonItem = nil;<br />
      }<br />
    }<br />
     
    Bijdrager
    Luuksweb

    Goedemorgen,

    Ten eerste mijn excuses voor mijn late reactie.
    Ik heb het geprobeerd maar het lukt helaas nog niet.
    Ik heb dit nu dus in de AppDelegate.h gezet:

    <br />
    @property (strong, nonatomic) IBOutlet UITabBarController *naviController;<br />
     

    En dit en de code die Koen mij heeft gegeven in AppDelegate.m gezet:

    <br />
    @synthesize naviController;<br />
     

    Vervolgens kan ik de naviController niet met de FileOwner verbinden en krijg ik twee foutmeldingen bij de laatste regel code (code van Koen).

    1. ’Property ‘navigationBar’ not found on object of type ‘UITabBarController *’; did you mean ‘navigationItem’?’
    2. ’Property ‘topItem’ not found on object of type ‘UINavigationItem *”

    Ziet iemand wat ik fout doe?

    Mijn excuses voor de vele vragen.

    Met vriendelijke groet,
    Lukas Goes

    Inactief
    Anoniem

    Sorry, ik kan je niet verder helpen, ik ben alleen bekend met OSX projecten. Het enige wat ik kan aanraden is om de docs van Apple eens goed door te spitten om te kijken hoe een UIViewController werkt, bijvoorbeeld deze

    Verder is mijn ervaring, wanneer je iets te ingewikkeld doet, doe je het waarschijnlijk niet goed:smile:

    Bijdrager
    Luuksweb

    Ok, in ieder geval heel erg bedankt voor alle hulp die je hebt geboden!
    Ik hoop dat iemand anders mij nog kan helpen.

    Met vriendelijke groet,
    Lukas Goes

    Bijdrager
    Verwijder

    Ik heb ook alleen verstand van OS X maar ik heb leren spitten in de documentatie. Het helpt meestal om de overview en companion guide van een class (meerdere malen) goed door te lezen. In de companion guide van UITabBar en UITabBarController staat een paragraaf “Preventing the Customization of Tabs”.
    Als ik

    self.tabBarController.customizableViewControllers = nil;

    toevoeg in application:didFinishLaunchingWithOptions: dan is de Edit-knop verdwenen. Dit staat ook in de link van jandoornbos.
    Het volgende werkt ook (behalve de eerste keer) maar ik vind het een minder nette oplossing:

    - (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController<br />
    {<br />
    	tabBarController.moreNavigationController.navigationBar.topItem.rightBarButtonItem = nil;<br />
    }

    Ook dit (met een foutje) staat in de link van jandoornbos.

    Bijdrager
    Luuksweb

    Bedankt voor alle hulp.
    Ik heb het opgelost door bepaalde dingen aan de app te veranderen waardoor de ‘wijzig’ knop wel kan blijven staan.

    Met vriendelijke groet,
    Lukas

11 berichten aan het bekijken - 1 tot 11 (van in totaal 11)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.