2015-12-15 10 views
0

Приветствую друзей Я новичок в разработке Android и Stackoverflow, Я столкнулся с некоторыми проблемами в макете android, Я создал две папки макетов для портрета и один для пейзажа (оба для таблетки tVDPI)Android Layout вопрос о портрете и ландшафте

макет sw600dp-земля-tvdpi & макет sw600dp-порт tvdpi

проблема я столкнулся, когда я запускаю свою программу в портретном режиме он показывает мне правильное расположение портрета, но когда я поворачиваю свой портрет устройства к пейзажу, он показывает с тем же макетом портрета, и в том же случае, когда я запускаю его в ландшафтном режиме, он работает правильно и поворачивается к потоку, он показывает мне макет ландшафта ...

Почему?

+0

Эй! Можете ли вы вставить свой код manifest.xml. – Shankar

+0

«<манифеста XMLNS: андроид = "http://schemas.android.com/apk/res/android" андроид: INSTALLLOCATION = "авто" андроида: versionName = "2,4" пакет =" abc.com " андроида: VersionCode =" 5 "> \t <использует-SDK Android: minSdkVersion =" 10" /> \t <приложение Android: LABEL = "TMS Задачи" андроид: значок = "@ вытяжке/Иконка "> \t ' –

+0

Это не полный манифест, он не имеет активности для запуска по умолчанию и всех. В любом случае, если вы хотите воссоздать и перезагрузить макет, удалите андроид: configChanges = "keyboardHidden | orientation" из вашего файла манифеста .. – Shankar

ответ

0

Попробуйте

#region Handle State on Orientation 
    //this has been done using better technique 
    protected override void OnSaveInstanceState(Bundle outState) 
    { 
     base.OnSaveInstanceState(outState); 
     //adding spinner/dropdownlist selected item 
     if (ViewModel.IsLoading == true) 
     { 
      isLoadingState = true; 
      AndroidHUD.AndHUD.Shared.Dismiss(this); 
     } 
     var preferences = GetSharedPreferences("TmsAppData", FileCreationMode.Private); 
     var editor = preferences.Edit(); 
     //editor.PutString("DeviceId", registrationId); 
     editor.PutBoolean("IsOrientationChange", true); 
     editor.Commit(); 
     //outState.PutInt("_AlreadySelectedPostion", _AlreadySelectedPostion); 
     outState.PutBoolean("_isLoadingState", isLoadingState); 
    } 
    protected override void OnRestoreInstanceState(Bundle savedInstanceState) 
    { 
     base.OnRestoreInstanceState(savedInstanceState); 
     //setting a flag to manage spinner selected state 
     _IsStateViewActive = true; 
     isLoadingState = savedInstanceState.GetBoolean("_isLoadingState"); 
     if (ViewModel.IsLoading == true) 
     { 
      isLoadingState = false; 
      ViewModel.IsLoading = true; 
     } 

     //getting the previous selected item from the saved state for spinner/dropdownlist 
     //_AlreadySelectedPostion = savedInstanceState.GetInt("_AlreadySelectedPostion"); 
    } 

    #endregion