Skip to content
This repository was archived by the owner on Dec 3, 2024. It is now read-only.

Commit 43d8ebf

Browse files
adamszeweimsodin
authored andcommitted
Use view binding in FirstStartActivity
1 parent e5574f0 commit 43d8ebf

File tree

1 file changed

+19
-24
lines changed

1 file changed

+19
-24
lines changed

app/src/main/java/com/nutomic/syncthingandroid/activities/FirstStartActivity.java

Lines changed: 19 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,13 @@
3131
import android.view.View.OnTouchListener;
3232
import android.view.ViewGroup;
3333
import android.widget.Button;
34-
import android.widget.LinearLayout;
3534
import android.widget.TextView;
3635
import android.widget.Toast;
3736

3837
import com.google.android.material.color.MaterialColors;
3938
import com.nutomic.syncthingandroid.R;
4039
import com.nutomic.syncthingandroid.SyncthingApp;
40+
import com.nutomic.syncthingandroid.databinding.ActivityFirstStartBinding;
4141
import com.nutomic.syncthingandroid.service.Constants;
4242
import com.nutomic.syncthingandroid.util.PermissionUtil;
4343
import com.nutomic.syncthingandroid.util.Util;
@@ -69,12 +69,10 @@ private enum Slide {
6969
private static Slide[] slides = Slide.values();
7070
private static String TAG = "FirstStartActivity";
7171

72-
private ViewPager mViewPager;
7372
private ViewPagerAdapter mViewPagerAdapter;
74-
private LinearLayout mDotsLayout;
7573
private TextView[] mDots;
76-
private Button mBackButton;
77-
private Button mNextButton;
74+
75+
private ActivityFirstStartBinding binding;
7876

7977
@Inject
8078
SharedPreferences mPreferences;
@@ -95,13 +93,10 @@ protected void onCreate(Bundle savedInstanceState) {
9593
}
9694

9795
// Show first start welcome wizard UI.
98-
setContentView(R.layout.activity_first_start);
99-
mViewPager = (ViewPager) findViewById(R.id.view_pager);
100-
mDotsLayout = (LinearLayout) findViewById(R.id.layoutDots);
101-
mBackButton = (Button) findViewById(R.id.btn_back);
102-
mNextButton = (Button) findViewById(R.id.btn_next);
96+
binding = ActivityFirstStartBinding.inflate(getLayoutInflater());
97+
setContentView(binding.getRoot());
10398

104-
mViewPager.setOnTouchListener(new OnTouchListener() {
99+
binding.viewPager.setOnTouchListener(new OnTouchListener() {
105100
@Override
106101
public boolean onTouch(View v, MotionEvent event) {
107102
// Consume the event to prevent swiping through the slides.
@@ -115,17 +110,17 @@ public boolean onTouch(View v, MotionEvent event) {
115110
setActiveBottomDot(0);
116111

117112
mViewPagerAdapter = new ViewPagerAdapter();
118-
mViewPager.setAdapter(mViewPagerAdapter);
119-
mViewPager.addOnPageChangeListener(mViewPagerPageChangeListener);
113+
binding.viewPager.setAdapter(mViewPagerAdapter);
114+
binding.viewPager.addOnPageChangeListener(mViewPagerPageChangeListener);
120115

121-
mBackButton.setOnClickListener(new View.OnClickListener() {
116+
binding.btnBack.setOnClickListener(new View.OnClickListener() {
122117
@Override
123118
public void onClick(View v) {
124119
onBtnBackClick();
125120
}
126121
});
127122

128-
mNextButton.setOnClickListener(new View.OnClickListener() {
123+
binding.btnNext.setOnClickListener(new View.OnClickListener() {
129124
@Override
130125
public void onClick(View v) {
131126
onBtnNextClick();
@@ -139,12 +134,12 @@ public void onClick(View v) {
139134
}
140135

141136
public void onBtnBackClick() {
142-
int current = mViewPager.getCurrentItem() - 1;
137+
int current = binding.viewPager.getCurrentItem() - 1;
143138
if (current >= 0) {
144139
// Move to previous slider.
145-
mViewPager.setCurrentItem(current);
140+
binding.viewPager.setCurrentItem(current);
146141
if (current == 0) {
147-
mBackButton.setVisibility(View.GONE);
142+
binding.btnBack.setVisibility(View.GONE);
148143
}
149144
}
150145
}
@@ -171,11 +166,11 @@ public void onBtnNextClick() {
171166
break;
172167
}
173168

174-
int next = mViewPager.getCurrentItem() + 1;
169+
int next = binding.viewPager.getCurrentItem() + 1;
175170
while (next < slides.length) {
176171
if (!shouldSkipSlide(slides[next])) {
177-
mViewPager.setCurrentItem(next);
178-
mBackButton.setVisibility(View.VISIBLE);
172+
binding.viewPager.setCurrentItem(next);
173+
binding.btnBack.setVisibility(View.VISIBLE);
179174
break;
180175
}
181176
next++;
@@ -231,7 +226,7 @@ private void upgradeToApiLevel30() {
231226
}
232227

233228
private Slide currentSlide() {
234-
return slides[mViewPager.getCurrentItem()];
229+
return slides[binding.viewPager.getCurrentItem()];
235230
}
236231

237232
private boolean shouldSkipSlide(Slide slide) {
@@ -259,7 +254,7 @@ private void addBottomDots() {
259254
mDots[i] = new TextView(this);
260255
mDots[i].setText(Html.fromHtml("&#8226;"));
261256
mDots[i].setTextSize(35);
262-
mDotsLayout.addView(mDots[i]);
257+
binding.layoutDots.addView(mDots[i]);
263258
}
264259
}
265260

@@ -280,7 +275,7 @@ public void onPageSelected(int position) {
280275
setActiveBottomDot(position);
281276

282277
// Change the next button text from next to finish on last slide.
283-
mNextButton.setText(getString((position == slides.length - 1) ? R.string.finish : R.string.cont));
278+
binding.btnNext.setText(getString((position == slides.length - 1) ? R.string.finish : R.string.cont));
284279
}
285280

286281
@Override

0 commit comments

Comments
 (0)