
sumber gambar berasal dari buku : PROFESSIONAL WINDOWS® PHONE 7 APPLICATION DEVELOPMENT
Pada pengembangan aplikasi mobile, bisa dikatakan deteksi orientasi sangat penting. Pada post ini akan fokus membahasa sekilas tentang orientasi pada device mobile, dimana device dapat mendeteksi pergantian orientasi karena device tersebut memiliki accelerometer. Windows phone 7 dapat memperlihatkan perubahan orientasi menggunakan OrienttationChanged. Saat pengguna (menggunakan device mobile) melakukan perubahan orientasi, event OrientedChanged secara langsung dieksekusi. Pada Visual Studio 2010, kita dapat membuat event tersebut dengan cara sendiri (menggunakan event handler) atau dapat menggunakan method class dasar yaitu OnOrientationChanged. Jika anda ingin melampirkan event handler, dapat memilih PhoneApplicationPage pada page project dan pada properties, double klik pada event OrientationChanged. Hasilnya seperti :
private void PhoneApplicationPage_OrientationChanged(object sender,OrientationChangedEventArgs e)
{ //Code implementasi }
Alternatif lain adalah mengganti method dasar dan sekelas dengan OnOrientationChanged :
protected override void OnOrientationChanged(OrientationChangedEventArgs e)
{
base.OnOrientationChanged(e);
//Code implementasi
}
Di saat pembuatan project baru, kita dapat membuat aplikasi kita mendukung (support) orientasi landscape dan portrait dengan 2 cara, pertama dengan menggunakan code xaml :
< phone:PhoneApplicationPage
x:Class=”ApplicationLayouts.MainPage”
...
SupportedOrientations=”Portrait” >
atau pada code C# : *pada post ini penulis mencontohkan menggunakan C#.
SupportedOrientations = SupportedPageOrientation.Portrait | SupportedPageOrientation.Landscape;
Pada contoh dibawah ini, memberikan 5 buttun dengan posisi yang berbeda. Pada saat diubah dari protrait ke landscape, posisi button tersebut semakin mendekat antar button tersebut, sehingga diperlukan ScroolViewer agar posisi tidak berubah:
*tanpa socrollViewer

*menggunakan scroolViewer (posisi 5 button tersebut dipertahankan tetapi dibutuhkan scrool kebawah untuk melihat button lainnya.

code xaml :
1: <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
2: <ScrollViewer HorizontalAlignment="Stretch" VerticalAlignment="Stretch" VerticalScrollBarVisibility="Auto">
3: <Grid Height="800">
4: <Button Content="TopLeft" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="20,190,0,0" Width="200" />
5: <Button Content="TopRight" HorizontalAlignment="Right" VerticalAlignment="Top" Margin="0,190,20,0" Width="200" />
6: <Button Content="BottomLeft" HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="20,0,0,20" Width="200" />
7: <Button Content="BottomRight" HorizontalAlignment="Right" VerticalAlignment="Bottom" Margin="0,0,20,20" Width="200" />
8: <Button Content="Center" Margin="0" Height="200" Width="200" />
9: </Grid>
10: </ScrollViewer>
Diatas merupakan sedikit tehnik dalam menangani perubahan orientasi pada aplikasi yang ingin kita kembangkan pada windows phone 7, terima kasih.