Sök…


Introduktion

Modala presentationsstilar används när du övergår från en visningskontroller till en annan. Det finns två sätt att uppnå denna anpassning. En är genom kod och en annan via Interface Builder (med hjälp av segment). Denna effekt uppnås genom att ställa in modalPresentationStyle variabeln till en instans av UIModalPresentationStyle enum. modalPresentationStyle egenskapen är en klassvariabel för UIViewController och används för att specificera hur en ViewController på skärmen.

Anmärkningar

Kom alltid ihåg följande omnämnande från Apple.

I en horisontellt kompakt miljö presenteras alltid modala visningskontroller på hela skärmen. I en horisontellt regelbunden miljö finns det flera olika presentationsalternativ.

Utforska ModalPresentationStyle med Interface Builder

Detta kommer att vara en mycket grundläggande app som illustrerar olika ModalpresentationStyle i iOS. Enligt dokumentation som hittas här finns det 9 olika värden för UIModalPresentationStyle som är följande:

  1. fullScreen
  2. pageSheet
  3. formSheet
  4. currentContext
  5. custom
  6. overFullScreen
  7. overCurrentContext
  8. popover
  9. none

För att konfigurera ett projekt, skapa bara ett normalt iOS-projekt och lägg till 2 ViewControllers . Sätt en UIButton i din första ViewController och anslut den till 2nd ViewController via en Target -> Action . För att skilja båda ViewControllers anger du bakgrundsegenskap för UIView i ViewController någon annan färg. Om allt går bra, bör din Interface Builder se ut något så här, Inledande gränssnittsbyggare

Se till att du bygger detta projekt och kör det på iPad (För detaljer om varför iPad, se avsnittet Kommentarer). När du är klar med att konfigurera ditt projekt väljer du segmentet och går till attributes inspector . Du borde kunna se något liknande, ange bildbeskrivning här

Ställ in den Present Modally till Present Modally .

Nu kommer vi inte att se alla effekterna i det här exemplet eftersom vissa av dem kräver lite kod.

Låt oss börja med fullscreen . Denna effekt väljs som standard när du väljer Present Modally i fliken Kind . När du bygger och kör, skulle andra ViewController uppta hela skärmen på din iPad.

ange bildbeskrivning här

Nästa är pageSheet . Du kan välja det här alternativet på fliken Presentation . I det här alternativet, när enheten är i porträttläge, är den andra ViewController liknar fullskärm men i liggande läge, är 2nd ViewController mycket smal enhetens bredd. Allt innehåll som inte täcks av 2nd ViewController kommer att dimmas.

ange bildbeskrivning här

För formSheet stil formSheet den andra ViewController i mitten av enheten och storleken är mindre än den för enheten. När enheten är i liggande läge och tangentbordet är synligt syns positionen uppåt för att visa ViewController .

ange bildbeskrivning här

Den sista stilen som vi ska prova är popover . För att välja den här stilen väljer du Present as Popover i fliken Kind . Den andra ViewController presenteras som en liten popover (storlek kan ställas in). Bakgrundsinnehållet är nedtonat. Varje kran utanför popover skulle avvisa popover. Din Attributes Inspector bör se ut så här,

ange bildbeskrivning här

Anchor är det UI-element du vill att din popover-pil ska peka till. Directions är anvisningarna som du tillåter ditt popover- Anchor att peka på.

ange bildbeskrivning här

Mer än dessa grundläggande modala presentationsstilar, men de är lite komplicerade att uppnå och kräver viss kod. Mer information finns i Apple-dokumentationen.



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow