99import com .blogspot .e_kanivets .moneytracker .MtApp ;
1010import com .blogspot .e_kanivets .moneytracker .R ;
1111import com .blogspot .e_kanivets .moneytracker .controller .FormatController ;
12+ import com .blogspot .e_kanivets .moneytracker .databinding .ViewSummaryRecordsBinding ;
1213import com .blogspot .e_kanivets .moneytracker .entity .Period ;
1314import com .blogspot .e_kanivets .moneytracker .report .record .IRecordReport ;
1415import com .blogspot .e_kanivets .moneytracker .ui .presenter .base .BaseSummaryPresenter ;
1819
1920import javax .inject .Inject ;
2021
21- import butterknife .BindView ;
22- import butterknife .ButterKnife ;
23-
24- /**
25- * Util class to create and manage summary header view for .
26- * Created on 2/26/16.
27- *
28- * @author Evgenii Kanivets
29- */
3022public class ShortSummaryPresenter extends BaseSummaryPresenter {
3123
3224 @ Inject
3325 FormatController formatController ;
3426
3527 private int red ;
3628 private int green ;
37- private View view ;
29+ private ViewSummaryRecordsBinding binding ;
3830
3931 public ShortSummaryPresenter (Context context ) {
4032 this .context = context ;
@@ -50,18 +42,21 @@ public interface ItemClickListener {
5042 }
5143
5244 public View create (boolean shortSummary , ItemClickListener itemClickListener ) {
53- view = layoutInflater .inflate (R .layout .view_summary_records , null );
54- view .findViewById (R .id .iv_more ).setVisibility (shortSummary ? View .VISIBLE : View .INVISIBLE );
45+ binding = ViewSummaryRecordsBinding .inflate (layoutInflater );
46+
47+ binding .ivMore .setVisibility (shortSummary ? View .VISIBLE : View .INVISIBLE );
48+ binding .lvSummary .setClickable (false );
49+ binding .cvSummary .setClickable (true );
50+
51+ View view = binding .getRoot ();
5552 view .setEnabled (false );
56- view .findViewById (R .id .lvSummary ).setClickable (false );
57- view .findViewById (R .id .cvSummary ).setClickable (true );
58- view .setTag (new ViewHolder (view , itemClickListener ));
53+ view .setTag (new ViewHolder (binding , itemClickListener ));
5954
6055 return view ;
6156 }
6257
6358 public void update (IRecordReport report , String currency , List <String > ratesNeeded ) {
64- ViewHolder viewHolder = (ViewHolder ) view .getTag ();
59+ ViewHolder viewHolder = (ViewHolder ) binding . getRoot () .getTag ();
6560 if (report == null ) {
6661 viewHolder .tvTotalIncome .setText ("" );
6762 viewHolder .tvTotalExpense .setText ("" );
@@ -107,24 +102,22 @@ private String formatPeriod(Period period) {
107102
108103 public static class ViewHolder extends RecyclerView .ViewHolder {
109104
110- @ BindView (R .id .tvPeriod )
111105 TextView tvPeriod ;
112- @ BindView (R .id .tvTotalIncome )
113106 TextView tvTotalIncome ;
114- @ BindView (R .id .tvTotalExpense )
115107 TextView tvTotalExpense ;
116- @ BindView (R .id .tvTotal )
117108 TextView tvTotal ;
118109
119- public ViewHolder (View view , final ItemClickListener itemClickListener ) {
120- super (view );
121- ButterKnife .bind (this , view );
122- view .findViewById (R .id .cvSummary ).setOnClickListener (new View .OnClickListener () {
123- @ Override
124- public void onClick (View v ) {
125- if (itemClickListener != null )
126- itemClickListener .invoke ();
127- }
110+ public ViewHolder (ViewSummaryRecordsBinding binding , final ItemClickListener itemClickListener ) {
111+ super (binding .getRoot ());
112+
113+ this .tvPeriod = binding .tvPeriod ;
114+ this .tvTotalIncome = binding .tvTotalIncome ;
115+ this .tvTotalExpense = binding .tvTotalExpense ;
116+ this .tvTotal = binding .tvTotal ;
117+
118+ binding .getRoot ().findViewById (R .id .cvSummary ).setOnClickListener (v -> {
119+ if (itemClickListener != null )
120+ itemClickListener .invoke ();
128121 });
129122 }
130123 }
0 commit comments