работа OnConfigurationChanged () в MonoDroid - PullRequest
1 голос
/ 15 февраля 2012

Я новичок в разработке для Android, и я до сих пор работаю на Android через Java (Eclipse), но сейчас я переключаюсь на Mono for Android, который использует C #.

В java для изменения ориентации я использовал следующий фрагмент кода:

@Override
    public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);

        if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
             Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();

        } else{
             Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
        }
    }

При попытке сделать то же самое в C # в Mono for Android, я попытался это

 public override void OnConfigurationChanged(Android.Content.Res.Configuration newConfig)
        {
            base.OnConfigurationChanged (newConfig);
            if (newConfig.Orientation == Android.Content.Res.Configuration.ORIENTATION_LANDSCAPE)  
            {
                Toast.MakeText(this, "landscape",ToastLength.Long).Show();
            } 
            else /* if (orientation == 0) */
            {
                Toast.MakeText(this, "portrait", ToastLength.Long).Show();
            }
        }

, но Android.Content.Res.Configuration не имеет атрибута со значением 'ORIENTATION_LANDSCAPE` , когда я пытаюсь использовать следующий оператор

if (newConfig.Orientation == Android.Content.Res.Configuration.ORIENTATION_LANDSCAPE)

Какое может быть решение? Любой другой вариант доступен?

Любая помощь приветствуется!

1 Ответ

2 голосов
/ 15 февраля 2012

Вы должны использовать:

Android.Content.Res.Orientation.Landscape

Ссылка API - enum

API refenence - Конфигурация

...