2016-07-29 25 views
0

Ich möchte dieses Symbol setzen, wenn der Benutzer dieses Kapitel als dieses markieren möchte Wenn Sie dieses Symbol lesen, wird es zu einem anderen Symbol wechseln.Ich möchte dieses Symbol setzen, wenn der Benutzer dieses Kapitel markieren möchte, da es dieses Symbol abtastet, so dass es zu einem anderen Symbol wechselt

image that described my work

meine Dateien: SeptCoursAdapter.java

public class SeptCoursAdapter extends RecyclerView.Adapter<SeptCoursAdapter.MyViewHolder> { 

private Context mContext; 
private List<ItemSeptCours> chapList; 

public class MyViewHolder extends RecyclerView.ViewHolder { 
    public TextView chapitreTitle; 
    public TextView nbHeures; 
    public ImageView pecLue; 

    public MyViewHolder(View view) { 
     super(view); 
     chapitreTitle = (TextView) view.findViewById(R.id.chapitre_title); 
     nbHeures = (TextView) view.findViewById(R.id.nb_heure); 
     pecLue = (ImageView) view.findViewById(R.id.image_lue); 
    } 
} 


public SeptCoursAdapter(Context mContext, List<ItemSeptCours> chapList) { 
    this.mContext = mContext; 
    this.chapList = chapList; 
} 

@Override 
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
    View itemView = LayoutInflater.from(parent.getContext()) 
      .inflate(R.layout.card_item_7_cours, parent, false); 

    return new MyViewHolder(itemView); 
} 

@Override 
public void onBindViewHolder(final MyViewHolder holder, int position) { 

    ItemSeptCours itemSeptCours = chapList.get(position); 
    holder.chapitreTitle.setText(itemSeptCours.getChapitreTitle()); 
    holder.nbHeures.setText(itemSeptCours.getNbHeures()); 
    Glide.with(mContext).load(itemSeptCours.getPecLue()).into(holder.pecLue); 


    holder.pecLue.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 


      if(holder.pecLue.getVisibility()== View.VISIBLE) 
       holder.pecLue.setVisibility(View.INVISIBLE); 
     } 
    }); 

} 

@Override 
public int getItemCount() { 
    return chapList.size(); 
} 

}

CoursSeptFragment.java

public class CoursSeptBaseFragment extends Fragment { 
@Nullable 
private RecyclerView recyclerView; 
private RecyclerView.Adapter adapter; 
private List<ItemSeptCours> chapList; 
@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 

    View view = inflater.inflate(R.layout.cours_sept_base_fragment, container, false); 

    recyclerView = (RecyclerView) view.findViewById(R.id.recyclerView_sept); 

    chapList = new ArrayList<>(); 
    adapter = new SeptCoursAdapter(view.getContext(), chapList); 


    if (recyclerView != null) { 
     recyclerView.setHasFixedSize(true); 
    } 


    RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(view.getContext()); 
    recyclerView.setLayoutManager(mLayoutManager); 
    recyclerView.setAdapter(adapter); 


    prepareChapitre(); 

    return view; 
} 


private void prepareChapitre() { 

    int[] luePecTab = new int[]{ 
      R.drawable.ic_visibility_black_18dp_blue, 
      R.drawable.ic_visibility_off_black_18dp_blue}; 

    ItemSeptCours a = new ItemSeptCours("Chap 1: Ordinateur et systèmes d'exploitation", "4 séances", luePecTab[0]); 
    chapList.add(a); 

    a = new ItemSeptCours("Chap 2: Exploitations de logiciels", "4 séances", luePecTab[0]); 
    chapList.add(a); 

    a = new ItemSeptCours("Chap 3: L'Internet : Le web", "4 séances", luePecTab[0]); 
    chapList.add(a); 

    a = new ItemSeptCours("Un mini projet", "6 séances", luePecTab[0]); 
    chapList.add(a); 

    adapter.notifyDataSetChanged(); 
} 

}

+0

seine sur i understant Sie einen Knopf wie Lieblinge wollen, wenn Sie es drückt sie sich füllen? – JCDecary

Antwort

0

Ich denke du bist fast da. (PecLue Annahme, daß Ihr kleines Augenbild)

Pseudo-Code:

 holder.pecLue.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 

      //if(holder.pecLue.getVisibility()== View.VISIBLE) 
      // holder.pecLue.setVisibility(View.INVISIBLE); 

      if(conditionIfChapterIsMarked){ 
       holder.pecLue.setImageResource(R.drawable.pec_lue_icon_unmarked); 
       //unmarkChapterLogic() 
      }else{ 
       holder.pecLue.setImageResource(R.drawable.pec_lue_icon_marked); 
       //markChapterLogic() 
      } 
     } 
    }); 
+0

t ist sehr hilfreich, denkt freind –