package treehou.se.habit.tasker;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.widget.DefaultItemAnimator;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import treehou.se.habit.R;
import treehou.se.habit.tasker.items.CommandActionFragment;
import treehou.se.habit.tasker.items.IncDecActionFragment;
import treehou.se.habit.tasker.items.SwitchActionFragment;
import treehou.se.habit.ui.adapter.MenuAdapter;
import treehou.se.habit.ui.adapter.MenuItem;
public class ItemFragment extends Fragment {
public static final int MENU_ITEM_SWITCH = 0;
public static final int MENU_ITEM_COMMAND = 1;
public static final int MENU_ITEM_INC_DEC = 2;
public static ItemFragment newInstance() {
ItemFragment fragment = new ItemFragment();
Bundle args = new Bundle();
fragment.setArguments(args);
return fragment;
}
public ItemFragment() {
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, final ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_item, container, false);
MenuAdapter menuAdapter = new MenuAdapter(getActivity());
menuAdapter.addItem(new MenuItem(getString(R.string.command), MENU_ITEM_COMMAND, R.drawable.ic_icon_sitemap));
menuAdapter.addItem(new MenuItem(getString(R.string.label_switch), MENU_ITEM_SWITCH, R.drawable.ic_icon_sitemap));
menuAdapter.addItem(new MenuItem(getString(R.string.inc_dec), MENU_ITEM_INC_DEC, R.drawable.ic_icon_sitemap));
menuAdapter.setOnItemSelectListener(id -> {
switch (id){
case MENU_ITEM_SWITCH :
getActivity().getSupportFragmentManager()
.beginTransaction()
.replace(container.getId(), SwitchActionFragment.newInstance())
.addToBackStack(null)
.commit();
break;
case MENU_ITEM_COMMAND :
getActivity().getSupportFragmentManager()
.beginTransaction()
.replace(container.getId(), CommandActionFragment.newInstance())
.addToBackStack(null)
.commit();
break;
case MENU_ITEM_INC_DEC :
getActivity().getSupportFragmentManager()
.beginTransaction()
.replace(container.getId(), IncDecActionFragment.newInstance())
.addToBackStack(null)
.commit();
break;
}
});
RecyclerView lstItems = (RecyclerView) rootView.findViewById(R.id.list);
GridLayoutManager gridLayoutManager = new GridLayoutManager(getActivity(), 1);
lstItems.setLayoutManager(gridLayoutManager);
lstItems.setItemAnimator(new DefaultItemAnimator());
lstItems.setAdapter(menuAdapter);
return rootView;
}
}