Я попытался восстановить четыре фотографии из Firebase и отобразить их в слайд-шоу, получая URL-адреса с помощью getUrl()
.
Однако метод setSliderViews()
не выполняется, и я вижу эту ошибку:
ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: main: "
Как мне решить эту проблему?
public class MainActivity extends AppCompatActivity {
Upload data;
ArrayList<String> url = new ArrayList<String>();
SliderLayout sliderLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
sliderLayout = findViewById(R.id.imageSlider);
sliderLayout.setIndicatorAnimation(SliderLayout.Animations.FILL); //set indicator animation by using SliderLayout.Animations. :WORM or THIN_WORM or COLOR or DROP or FILL or NONE or SCALE or SCALE_DOWN or SLIDE and SWAP!!
sliderLayout.setScrollTimeInSec(1); //set scroll delay in seconds :
getUrl();
setSliderViews();
}
private void getUrl(){
final ArrayList<String> mUrl = new ArrayList<String>();
FirebaseDatabase.getInstance().getReference("upload").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
data = snapshot.getValue(Upload.class);
if (data != null) {
mUrl.add(data.getImageUrl());
}
}
url = mUrl;
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
private void setSliderViews() {
for (int i = 0; i <= 3; i++) {
SliderView sliderView = new SliderView(this);
switch (i) {
case 0:
sliderView.setImageUrl(url.get(0));
break;
case 1:
sliderView.setImageUrl(url.get(1));
break;
case 2:
sliderView.setImageUrl(url.get(2));
break;
case 3:
sliderView.setImageUrl(url.get(3));
break;
}
sliderView.setImageScaleType(ImageView.ScaleType.CENTER_CROP);
//sliderView.setDescription(" " + (i + 1));
final int finalI = i;
sliderView.setOnSliderClickListener(new SliderView.OnSliderClickListener() {
@Override
public void onSliderClick(SliderView sliderView) {
Toast.makeText(MainActivity.this, "This is slider " + (finalI + 1), Toast.LENGTH_SHORT).show();
}
});
//at last add this view in your layout :
sliderLayout.addSliderView(sliderView);
}
}
}
Этот экран из lolcat описывает ошибку