2016-04-06 1 views
0

Я использую меню опций, которые я помещаю на панели навигации с помощью MenuInflaterXamarin: При повороте экрана OptionMenu Значок повторяется дважды

после того, когда создается активность при попытке поворота экрана, то я см. две иконки вместо одного значка.

Я пытаюсь найти решение о том, как обрабатывать событие вращения экрана.

Here is the screenshot

здесь является activity.cs

 [Activity(Label = "Menu", Icon = "@drawable/Icon", ConfigurationChanges = Android.Content.PM.ConfigChanges.Orientation | Android.Content.PM.ConfigChanges.ScreenSize)] 
    public class MenuNavigation : ListActivity { 
    string[] items; 
    protected override void OnCreate(Bundle bundle) 
    { 
     base.OnCreate(bundle); 
     items = new string[] { "Chat", "News", "Events", "Member List", "My Profile", "About Association" ,"About Application"}; 
     ListAdapter = new ArrayAdapter<String>(this, Android.Resource.Layout.SimpleListItem1, items); 
    } 

    public override bool OnPrepareOptionsMenu(IMenu menu) 
    { 
      MenuInflater.Inflate(Resource.Menu.main, menu); 
      return base.OnPrepareOptionsMenu(menu); 
    } 
} 

и меню/main.xml

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto"> 
    <item 
    android:id="@+id/action_logout" 
    android:icon="@drawable/logout" 
    android:orderInCategory="100" 
    android:title="Log Out" 
    android:showAsAction="ifRoom"/> 
</menu> 
+0

Вам необходимо предоставить фактический код для нас, чтобы помочь вам в решении этой проблемы. По крайней мере, некоторые минимальные шаги воспроизведения. – Cheesebaron

+0

@ Cheesebaron добавил код для activity.cs и menu.xml в вопрос! –

ответ

0

Пока я искал решения по developer.xamarin ->Handling Rotation

Я нашел решение своего вопроса. Все, что я должен был сделать, чтобы:

[Activity(Label = "Menu", Icon = "@drawable/Icon", ConfigurationChanges = Android.Content.PM.ConfigChanges.Orientation | Android.Content.PM.ConfigChanges.ScreenSize)] 

ConfigurationChanges = Android.Content.PM.ConfigChanges.Orientation

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

Смежные вопросы