Java 故事进度条只显示了来自firebase数据库的arraylist的最后一张图片
故事进度类Java 故事进度条只显示了来自firebase数据库的arraylist的最后一张图片,java,android,arrays,firebase,progress-bar,Java,Android,Arrays,Firebase,Progress Bar,故事进度类 如何在firebase的arraylist中显示我的所有图片,因为它只显示storyprogressbar上的最后一张图片。arraylist包含所有图片Url。问题是没有在storiesProgressbar上显示所有图片。。请帮我解决这个问题 这是我从中获取数据的firebase树(图片) 详细状态活动 公共类DetailStatusActivity扩展AppCompative实现StoriesProgressView.StoriesListener{ StoriesProgr
如何在firebase的arraylist中显示我的所有图片,因为它只显示storyprogressbar上的最后一张图片。arraylist包含所有图片Url。问题是没有在storiesProgressbar上显示所有图片。。请帮我解决这个问题 这是我从中获取数据的firebase树(图片)
详细状态活动
公共类DetailStatusActivity扩展AppCompative实现StoriesProgressView.StoriesListener{
StoriesProgressView StoriesProgressView;
图像视图图像;
int计数器=0;
长按时间=0升;
长限=500L;
public View.OnTouchListener OnTouchListener=新建视图。OnTouchListener(){
@凌驾
公共布尔onTouch(视图、运动事件、运动事件){
开关(motionEvent.getAction()){
case MotionEvent.ACTION\u DOWN:
pressTime=System.currentTimeMillis();
storiesProgressView.pause();
返回false;
case MotionEvent.ACTION\u UP:
long now=System.currentTimeMillis();
storiesProgressView.resume();
返回限制<现在-按时间;
}
返回false;
}
};
私有字符串currentUserID;
私有数据库引用statusRef;
私人字符串访问id;
私有数据库引用detailStatusRef;
私人ArrayList imagesArray;
私有数据库引用userRef;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_全屏);
setContentView(R.layout.activity\u detail\u status);
image=(ImageView)findviewbyd(R.id.image);
storiesProgressView=(storiesProgressView)findViewById(R.id.stories);
访问_id=getIntent().getStringExtra(“uid”);
日志d(“cominghereId”,访问id);
currentUserID=FirebaseAuth.getInstance().getCurrentUser().getUid();
statusRef=FirebaseDatabase.getInstance().getReference().child(“状态”);
userRef=FirebaseDatabase.getInstance().getReference().child(“用户”);
detailStatusRef=FirebaseDatabase.getInstance().getReference();
视图反向=findViewById(R.id.reverse);
reverse.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
storiesProgressView.reverse();
}
});
reverse.setOnTouchListener(onTouchListener);
视图跳过=findViewById(R.id.skip);
skip.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
storiesProgressView.skip();
}
});
skip.setOnTouchListener(onTouchListener);
}
@凌驾
受保护的void onStart(){
super.onStart();
imagesArray=newarraylist();
detailStatusRef.child(“DetailStatusesImages”).child(访问id).addValueEventListener(新的ValueEventListener()){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
imagesArray.clear();
对于(DataSnapshot快照:DataSnapshot.getChildren()){
DetailStatusModel Dupload=snapshot.getValue(DetailStatusModel.class);
add(Dupload.getImage());
}
Log.d(“sizee”,String.valueOf(imagesArray.size());
storiesProgressView.setStoriesCount(imagesArray.size());
storiesProgressView.setStoryDuration(3000L);
storiesProgressView.setStoriesListener(DetailStatusActivity.this);
storiesProgressView.startStories(计数器);
Glide.with(getApplicationContext()).load(imagesArray.get(counter)).into(image);
}
@凌驾
已取消的公共void(DatabaseError DatabaseError){
}
});
}
@凌驾
public void onNext(){
Glide.with(getApplicationContext()).load(imagesArray.get(++计数器)).into(图像);
Log.d(“indexx”,imagesArray.get(计数器));
}
@凌驾
公共无效onPrev(){
如果((计数器-1)<0)返回;
Glide.with(getApplicationContext()).load(imagesArray.get(--counter)).into(image);
}
@凌驾
未完成的公共空间(){
完成();
}
@凌驾
受保护的空onDestroy(){
storiesProgressView.destroy();
super.ondestory();
}
@凌驾
受保护的void onPause(){
storiesProgressView.pause();
super.onPause();
}
@凌驾
受保护的void onResume(){
storiesProgressView.resume();
super.onResume();
}
}
请关注可能对您有所帮助我已经关注了该视频,但我将第一次显示所有图片..重新启动我的应用程序时,我不会显示任何图片
public class DetailStatusActivity extends AppCompatActivity implements StoriesProgressView.StoriesListener {
StoriesProgressView storiesProgressView;
ImageView image;
int counter = 0;
long pressTime = 0L;
long limit = 500L;
public View.OnTouchListener onTouchListener = new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
switch (motionEvent.getAction()) {
case MotionEvent.ACTION_DOWN:
pressTime = System.currentTimeMillis();
storiesProgressView.pause();
return false;
case MotionEvent.ACTION_UP:
long now = System.currentTimeMillis();
storiesProgressView.resume();
return limit < now - pressTime;
}
return false;
}
};
private String currentUserID;
private DatabaseReference statusRef;
private String visit_id;
private DatabaseReference detailStatusRef;
private ArrayList<String> imagesArray;
private DatabaseReference userRef;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_detail_status);
image = (ImageView) findViewById(R.id.image);
storiesProgressView = (StoriesProgressView) findViewById(R.id.stories);
visit_id = getIntent().getStringExtra("uid");
Log.d("cominghereId", visit_id);
currentUserID = FirebaseAuth.getInstance().getCurrentUser().getUid();
statusRef = FirebaseDatabase.getInstance().getReference().child("Statuses");
userRef = FirebaseDatabase.getInstance().getReference().child("Users");
detailStatusRef = FirebaseDatabase.getInstance().getReference();
View reverse = findViewById(R.id.reverse);
reverse.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
storiesProgressView.reverse();
}
});
reverse.setOnTouchListener(onTouchListener);
View skip = findViewById(R.id.skip);
skip.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
storiesProgressView.skip();
}
});
skip.setOnTouchListener(onTouchListener);
}
@Override
protected void onStart() {
super.onStart();
imagesArray=new ArrayList<>();
detailStatusRef.child("DetailStatusesImages").child(visit_id).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
imagesArray.clear();
for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
DetailStatusModel Dupload = snapshot.getValue(DetailStatusModel.class);
imagesArray.add(Dupload.getImage());
}
Log.d("sizee", String.valueOf(imagesArray.size()));
storiesProgressView.setStoriesCount(imagesArray.size());
storiesProgressView.setStoryDuration(3000L);
storiesProgressView.setStoriesListener(DetailStatusActivity.this);
storiesProgressView.startStories(counter);
Glide.with(getApplicationContext()).load(imagesArray.get(counter)).into(image);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
@Override
public void onNext() {
Glide.with(getApplicationContext()).load(imagesArray.get(++counter)).into(image);
Log.d("indexx", imagesArray.get(counter));
}
@Override
public void onPrev() {
if ((counter - 1) < 0) return;
Glide.with(getApplicationContext()).load(imagesArray.get(--counter)).into(image);
}
@Override
public void onComplete() {
finish();
}
@Override
protected void onDestroy() {
storiesProgressView.destroy();
super.onDestroy();
}
@Override
protected void onPause() {
storiesProgressView.pause();
super.onPause();
}
@Override
protected void onResume() {
storiesProgressView.resume();
super.onResume();
}
}