Jak usunąć dodatkową przestrzeń między paskiem nawigacji a widokiem przewijania?

Cele bloga

Po przeczytaniu tego bloga będziemy mogli zrozumieć przyczynę dodatkowej przestrzeni między górnym paskiem nawigacyjnym a widokiem przewijania w aplikacji na iOS w wersjach iOS 7 na iOS 10.

Problem Statement

Kiedy dodajemy widok przewijania lub widok tabeli (dowolny przewijany widok) w kontrolerze widoku, który zawiera pasek nawigacji u góry, mamy do czynienia z typowym problemem, który był dodatkową przestrzenią między górnym paskiem nawigacyjnym a widokiem przewijania.

przewijane: aplikacja na iOS

Dlaczego obecny problem istnieje

Od systemu iOS 7 do iOS 10, kiedy dodajemy pasek nawigacyjny na wierzchu dowolnego kontrolera ViewController, wówczas Xcode oferuje opcję, która sprawia, że ​​pasek nawigacji jest półprzezroczysty. Abyśmy mogli zobaczyć za pomocą paska nawigacji i przewijanie strony można zobaczyć za pomocą paska nawigacji.

Przyczyną problemu jest to, że po dodaniu widoku przewijania w kontrolce ViewController i ustawieniu paska nawigacji oraz półprzezroczystości, ScrollView pozostawia margines z głównego widoku paska nawigacyjnego. Ale pasek nawigacyjny został dodany w czasie wykonywania i przesuwa główny widok, tak aby pasek nawigacji zmieścił się na górze. W takim przypadku widok jest przesunięty w dół za pomocą paska nawigacji, a widok przewijania pozostawia margines dla paska nawigacji. Tutaj obserwujemy, że dodatkowy odstęp został dodany dwa razy.

Był to jedyny powód, dla którego widzimy dodatkową przestrzeń między paskiem nawigacji a widokiem przewijania.

Procedura rozwiązania problemu

Istnieją dwa sposoby rozwiązania tego problemu. W obu przypadkach ograniczamy widok przewijania, aby zostawić dodatkowy margines dla paska nawigacyjnego.

1.Możemy ustawić opcję Translucent dla paska nawigacji na "False" w Xcode

? This will make the navigation bar Opaque and then the scroll view is not required to scroll under the Navigation Bar. So that Scroll View will leave no space for Navigation Bar.

W poniższym Gif widać, że ograniczenia układu widoku zmieniają się po włączeniu / wyłączeniu właściwości "Translucent" paska nawigacji.

przeświecający

2.Możemy wyłączyć "Dostosuj przewijanie Zobacz wstawki"właściwość ViewController.

Dostosuj przewijanie Zobacz wstawki: aplikacja iOS

? This will restrict the Scroll View to leave extra space for the Navigation bar on top.

Podsumowanie

Po wykonaniu powyższej procedury będziesz mógł usunąć dodatkową przestrzeń między paskiem nawigacji i widokiem przewijania.


Akash Sharma

Akash Sharma

I'm Akash Sharma, an engineering graduate and software developer by profession. Challenges fascinate me and I like solving them.

Leave a Reply

Your email address will not be published. Required fields are marked *