33import android .content .Intent ;
44import android .net .Uri ;
55import android .os .AsyncTask ;
6+
67import androidx .annotation .NonNull ;
8+ import androidx .annotation .Nullable ;
79import androidx .core .content .FileProvider ;
810import androidx .appcompat .app .AlertDialog ;
11+
12+ import android .os .Bundle ;
913import android .view .Menu ;
1014import android .view .MenuItem ;
11- import android .widget .EditText ;
1215
1316import com .blogspot .e_kanivets .moneytracker .R ;
1417import com .blogspot .e_kanivets .moneytracker .activity .base .BaseBackActivity ;
1518import com .blogspot .e_kanivets .moneytracker .controller .external .ExportController ;
1619import com .blogspot .e_kanivets .moneytracker .controller .external .ImportController ;
20+ import com .blogspot .e_kanivets .moneytracker .databinding .ActivityImportExportBinding ;
1721import com .blogspot .e_kanivets .moneytracker .entity .data .Record ;
1822import com .blogspot .e_kanivets .moneytracker .util .CrashlyticsProxy ;
1923
2428
2529import javax .inject .Inject ;
2630
27- import butterknife .BindView ;
28- import butterknife .OnClick ;
2931import timber .log .Timber ;
3032
3133public class ImportExportActivity extends BaseBackActivity {
@@ -36,19 +38,28 @@ public class ImportExportActivity extends BaseBackActivity {
3638 @ Inject
3739 ExportController exportController ;
3840
39- @ BindView (R .id .et_import_data )
40- EditText etImportData ;
41+ private ActivityImportExportBinding binding ;
4142
4243 @ Override
43- protected int getContentViewId () {
44- return R .layout .activity_import_export ;
44+ protected void onCreate (@ Nullable Bundle savedInstanceState ) {
45+ super .onCreate (savedInstanceState );
46+
47+ binding = ActivityImportExportBinding .inflate (getLayoutInflater ());
48+ setContentView (binding .getRoot ());
49+
50+ initData ();
51+ initToolbar ();
52+ initViews ();
4553 }
4654
47- @ Override
48- protected boolean initData () {
49- boolean result = super .initData ();
55+ private void initViews () {
56+ binding .btnImport .setOnClickListener (view -> importRecords ());
57+ binding .btnExport .setOnClickListener (view -> exportRecords ());
58+ }
59+
60+ private boolean initData () {
5061 getAppComponent ().inject (ImportExportActivity .this );
51- return result ;
62+ return true ;
5263 }
5364
5465 @ Override
@@ -59,14 +70,11 @@ public boolean onCreateOptionsMenu(Menu menu) {
5970
6071 @ Override
6172 public boolean onOptionsItemSelected (MenuItem item ) {
62- switch (item .getItemId ()) {
63- case R .id .action_help :
64- showHelp ();
65- return true ;
66-
67- default :
68- return super .onOptionsItemSelected (item );
73+ if (item .getItemId () == R .id .action_help ) {
74+ showHelp ();
75+ return true ;
6976 }
77+ return super .onOptionsItemSelected (item );
7078 }
7179
7280 public void showHelp () {
@@ -78,10 +86,9 @@ public void showHelp() {
7886 .show ();
7987 }
8088
81- @ OnClick (R .id .btn_import )
8289 public void importRecords () {
8390 CrashlyticsProxy .get ().logButton ("Import Records" );
84- final String data = etImportData .getText ().toString ().trim ();
91+ final String data = binding . etImportData .getText ().toString ().trim ();
8592
8693 AsyncTask <Void , Void , Integer > importTask = new AsyncTask <Void , Void , Integer >() {
8794 @ Override
@@ -107,7 +114,6 @@ protected void onPostExecute(Integer recordCount) {
107114 importTask .execute ();
108115 }
109116
110- @ OnClick (R .id .btn_export )
111117 public void exportRecords () {
112118 CrashlyticsProxy .get ().logButton ("Export Records" );
113119 List <String > records = exportController .getRecordsForExport (0 , Long .MAX_VALUE );
0 commit comments