1

Я пытаюсь теперь изменить ABS actionbar на AppCompat. Мне нужно заставить следующий код: whitch отлично работает с SherlockFragment, для работы в android.support.v4.app.Fragment. Мне нужно добавить пользовательский вид в Menu. Как я могу сделать это прямо в android.support.v4.app.Fragment?ABS to AppCompat

@Override 
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { 
    super.onCreateOptionsMenu(menu, inflater); 
    menu.clear(); 
    View view = getLayoutInflater(getArguments()).inflate(R.layout.some_custom_layout, null); 
    menu.add("ITEM").setActionView(view).setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); 
} 

ответ

1

Вместо

void onCreateOptionsMenu(Menu menu, MenuInflater inflater) 

и использовать

void onPrepareOptionsMenu(Menu menu) 

затем изменить

menu.add("ITEM").setActionView(view).setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); 

к

MenuItem menuItem = menu.add("SWITCHER"); 
MenuItemCompat.setActionView(menuItem, view); 
MenuItemCompat.setShowAsAction(menuItem, MenuItemCompat.SHOW_AS_ACTION_ALWAYS);