Bu makale, Flutter’da setPreferredOrientations metodu kulanarak ekran yönünün nasıl kilitleneceğini anlatır.
Mobil uygulama hazırlarken bazen cihaz yan çevrilince uygulamamızın ekran görüntüsünün sabit kalmasını isteriz. Kullanıcı ekranı yatay ya da dikey kullanımlarında bizim uygulamamız sabit kalmalı ise aşağıdaki kodlar işimizi görecektir.
Öncelikle services.dart kütüphanesini ekliyoruz.
import 'package:flutter/services.dart';
SystemChrome.setPreferredOrientations metodu ile uygulama arabiriminin görüntüleyebileceği yönler kümesini belirtiriz. portraitUp ve portraitDown kullanarak uygulamamızın cihazın dikey konumda olduğu gibi görüntülenmesini yatay konuma geçince otomatik olarak uygulamamızın görüntüsünün değişmemesini sağlıyoruz.
SystemChrome.setPreferredOrientations([
DeviceOrientation.portraitUp,
DeviceOrientation.portraitDown,
]);
Yönler kümesi içinde kullanılabilecek olan yönler:
landscapeLeft
landscapeRight
portraitDown
portraitUp
Gelelim bu kodları nerede kullanacağımıza:
Widget build edilirken kullanılabilir
@override
Widget build(BuildContext context) {
if (Platform.isAndroid)
SystemChrome.setPreferredOrientations([
DeviceOrientation.portraitUp,
DeviceOrientation.portraitDown,
]);
......
Ya da Widget yüklenirken aktif etmek istersek, initState içinde çalıştırabiliriz
@override
void initState(){
super.initState();
SystemChrome.setPreferredOrientations([
DeviceOrientation.portraitUp,
DeviceOrientation.portraitDown,
]);
}
Bu özelliği aktif hale getirdikten sonra uygulamamızın diğer ekranlarında pasif hale getirmek istersek, dispose olayına
@override
dispose(){
SystemChrome.setPreferredOrientations([
DeviceOrientation.landscapeRight,
DeviceOrientation.landscapeLeft,
DeviceOrientation.portraitUp,
DeviceOrientation.portraitDown,
]);
super.dispose();
}
yazmamız yeterli.
setPreferredOrientations metodu doküman sayfası için tıklayınız.
Görüşmek üzere…