Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class MyRecyclerAdapter extends RecyclerView.Adapter<MyRecyclerAdapter.ViewHolder> {
- private MesFragment mParentFragment;
- private ArrayList<ItemMes> mListaItens;
- private Context mContext;
- public MyRecyclerAdapter(ArrayList<ItemMes> lista, MesFragment parent, Context ctx) {
- mListaItens = lista;
- mParentFragment = parent;
- mContext = ctx;
- }
- @Override
- public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
- // create a new view
- View v = LayoutInflater.from(parent.getContext())
- .inflate(R.layout.item_mes_layout, parent, false);
- // set the view's size, margins, paddings and layout parameters
- ViewHolder vh = new ViewHolder(v);
- return vh;
- }
- @Override
- public void onBindViewHolder(final ViewHolder holder, final int position) {
- ItemMes item = mListaItens.get((position));
- holder.descricao.setText(item.getDescrição());
- holder.valor.setText(MainActivity.decimalFormatWithCod.format(item.getValor()));
- if (item.getTipoItem().equals(ItemMes.TIPO_ITEM_RECEITA)) {
- holder.valor.setTextColor(ContextCompat.getColor(mContext, R.color.cor_valor_entrada));
- } else if (item.getTipoItem().equals(ItemMes.TIPO_ITEM_DESPESA)) {
- holder.valor.setTextColor(ContextCompat.getColor(mContext, R.color.cor_valor_saida));
- }
- holder.itemView.setOnLongClickListener(new View.OnLongClickListener() {
- @Override
- public boolean onLongClick(View v) {
- new MaterialDialog.Builder(mContext)
- .title(holder.descricao.getText().toString())
- .items(R.array.opcoes_longclick_item)
- .itemsCallbackSingleChoice(-1, new MaterialDialog.ListCallbackSingleChoice() {
- @Override
- public boolean onSelection(MaterialDialog dialog, View view, int which, CharSequence text) {
- switch (which) {
- case 0:
- mParentFragment.showUpdateItemDialog(position);
- return true;
- case 1:
- mParentFragment.showDeleteItemDialog(position);
- return true;
- }
- return false;
- }
- })
- .show();
- return true;
- }
- });
- }
- @Override
- public int getItemCount() {
- return mListaItens.size();
- }
- public ArrayList<ItemMes> getList() {
- return mListaItens;
- }
- // Essa classe associa itens da View criada no onCreateViewHolder
- // com os views declarados no layout. É por essa classe que vamos setar os valores da lista para os views no metodo onBindViewHolder
- // Sim, é complicado...
- public class ViewHolder extends RecyclerView.ViewHolder {
- public TextView descricao;
- public TextView valor;
- public ViewHolder(View view) {
- super(view);
- descricao = (TextView) itemView.findViewById(R.id.descricao);
- valor = (TextView) itemView.findViewById(R.id.valor);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement