Initial commit
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
package com.ubt.jimu.discover.view.adapter;
|
||||
|
||||
import android.animation.Animator;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.animation.Interpolator;
|
||||
import android.view.animation.LinearInterpolator;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import com.ubt.jimu.discover.view.ViewHelper;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public abstract class AnimatorAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
|
||||
private RecyclerView.Adapter<RecyclerView.ViewHolder> a;
|
||||
private int b = 300;
|
||||
private Interpolator c = new LinearInterpolator();
|
||||
private int d = -1;
|
||||
private boolean e = false;
|
||||
|
||||
public AnimatorAdapter(RecyclerView.Adapter<RecyclerView.ViewHolder> adapter) {
|
||||
this.a = adapter;
|
||||
}
|
||||
|
||||
protected abstract Animator[] a(View view);
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public int getItemCount() {
|
||||
return this.a.getItemCount();
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public long getItemId(int i) {
|
||||
return this.a.getItemId(i);
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public int getItemViewType(int i) {
|
||||
return this.a.getItemViewType(i);
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int i) {
|
||||
this.a.onBindViewHolder(viewHolder, i);
|
||||
int adapterPosition = viewHolder.getAdapterPosition();
|
||||
if (this.e && adapterPosition <= this.d) {
|
||||
ViewHelper.a(viewHolder.itemView);
|
||||
return;
|
||||
}
|
||||
for (Animator animator : a(viewHolder.itemView)) {
|
||||
animator.setDuration(this.b).start();
|
||||
animator.setInterpolator(this.c);
|
||||
}
|
||||
this.d = adapterPosition;
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
|
||||
return this.a.onCreateViewHolder(viewGroup, i);
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public void onViewRecycled(RecyclerView.ViewHolder viewHolder) {
|
||||
this.a.onViewRecycled(viewHolder);
|
||||
super.onViewRecycled(viewHolder);
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public void registerAdapterDataObserver(RecyclerView.AdapterDataObserver adapterDataObserver) {
|
||||
super.registerAdapterDataObserver(adapterDataObserver);
|
||||
this.a.registerAdapterDataObserver(adapterDataObserver);
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public void unregisterAdapterDataObserver(RecyclerView.AdapterDataObserver adapterDataObserver) {
|
||||
super.unregisterAdapterDataObserver(adapterDataObserver);
|
||||
this.a.unregisterAdapterDataObserver(adapterDataObserver);
|
||||
}
|
||||
}
|
@@ -0,0 +1,309 @@
|
||||
package com.ubt.jimu.discover.view.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.animation.LinearInterpolator;
|
||||
import android.view.animation.RotateAnimation;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import butterknife.ButterKnife;
|
||||
import butterknife.Unbinder;
|
||||
import butterknife.internal.Utils;
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.ubt.jimu.JimuApplication;
|
||||
import com.ubt.jimu.R;
|
||||
import com.ubt.jimu.base.entities.Course;
|
||||
import com.ubtech.utils.DisplayUtil;
|
||||
import java.util.List;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public class CourseListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
|
||||
private Context a;
|
||||
private boolean b = JimuApplication.l().i();
|
||||
private List<Course> c;
|
||||
private LayoutInflater d;
|
||||
private Callback e;
|
||||
|
||||
class CBHolder extends RecyclerView.ViewHolder {
|
||||
ImageView contentBgImageView;
|
||||
TextView courseNameTextView;
|
||||
TextView downloadProgressTextView;
|
||||
ImageView imageView;
|
||||
ImageView lockImageView;
|
||||
View maskView;
|
||||
ImageView typeImageView;
|
||||
|
||||
public CBHolder(CourseListAdapter courseListAdapter, View view) {
|
||||
super(view);
|
||||
ButterKnife.a(this, view);
|
||||
}
|
||||
}
|
||||
|
||||
public class CBHolder_ViewBinding implements Unbinder {
|
||||
private CBHolder b;
|
||||
|
||||
public CBHolder_ViewBinding(CBHolder cBHolder, View view) {
|
||||
this.b = cBHolder;
|
||||
cBHolder.imageView = (ImageView) Utils.b(view, R.id.content_image_view, "field 'imageView'", ImageView.class);
|
||||
cBHolder.typeImageView = (ImageView) Utils.b(view, R.id.type_image_view, "field 'typeImageView'", ImageView.class);
|
||||
cBHolder.lockImageView = (ImageView) Utils.b(view, R.id.lock_image_view, "field 'lockImageView'", ImageView.class);
|
||||
cBHolder.contentBgImageView = (ImageView) Utils.b(view, R.id.content_bg_image_view, "field 'contentBgImageView'", ImageView.class);
|
||||
cBHolder.courseNameTextView = (TextView) Utils.b(view, R.id.courseNameTextView, "field 'courseNameTextView'", TextView.class);
|
||||
cBHolder.maskView = Utils.a(view, R.id.maskView, "field 'maskView'");
|
||||
cBHolder.downloadProgressTextView = (TextView) Utils.b(view, R.id.downloadProgressTextView, "field 'downloadProgressTextView'", TextView.class);
|
||||
}
|
||||
|
||||
@Override // butterknife.Unbinder
|
||||
public void unbind() {
|
||||
CBHolder cBHolder = this.b;
|
||||
if (cBHolder == null) {
|
||||
throw new IllegalStateException("Bindings already cleared.");
|
||||
}
|
||||
this.b = null;
|
||||
cBHolder.imageView = null;
|
||||
cBHolder.typeImageView = null;
|
||||
cBHolder.lockImageView = null;
|
||||
cBHolder.contentBgImageView = null;
|
||||
cBHolder.courseNameTextView = null;
|
||||
cBHolder.maskView = null;
|
||||
cBHolder.downloadProgressTextView = null;
|
||||
}
|
||||
}
|
||||
|
||||
class CTHolder extends RecyclerView.ViewHolder {
|
||||
ImageView contentBgImageView;
|
||||
TextView courseNameTextView;
|
||||
TextView downloadProgressTextView;
|
||||
ImageView imageView;
|
||||
ImageView lockImageView;
|
||||
View maskView;
|
||||
ImageView typeImageView;
|
||||
|
||||
public CTHolder(CourseListAdapter courseListAdapter, View view) {
|
||||
super(view);
|
||||
ButterKnife.a(this, view);
|
||||
}
|
||||
}
|
||||
|
||||
public class CTHolder_ViewBinding implements Unbinder {
|
||||
private CTHolder b;
|
||||
|
||||
public CTHolder_ViewBinding(CTHolder cTHolder, View view) {
|
||||
this.b = cTHolder;
|
||||
cTHolder.imageView = (ImageView) Utils.b(view, R.id.content_image_view, "field 'imageView'", ImageView.class);
|
||||
cTHolder.typeImageView = (ImageView) Utils.b(view, R.id.type_image_view, "field 'typeImageView'", ImageView.class);
|
||||
cTHolder.lockImageView = (ImageView) Utils.b(view, R.id.lock_image_view, "field 'lockImageView'", ImageView.class);
|
||||
cTHolder.contentBgImageView = (ImageView) Utils.b(view, R.id.content_bg_image_view, "field 'contentBgImageView'", ImageView.class);
|
||||
cTHolder.courseNameTextView = (TextView) Utils.b(view, R.id.courseNameTextView, "field 'courseNameTextView'", TextView.class);
|
||||
cTHolder.maskView = Utils.a(view, R.id.maskView, "field 'maskView'");
|
||||
cTHolder.downloadProgressTextView = (TextView) Utils.b(view, R.id.downloadProgressTextView, "field 'downloadProgressTextView'", TextView.class);
|
||||
}
|
||||
|
||||
@Override // butterknife.Unbinder
|
||||
public void unbind() {
|
||||
CTHolder cTHolder = this.b;
|
||||
if (cTHolder == null) {
|
||||
throw new IllegalStateException("Bindings already cleared.");
|
||||
}
|
||||
this.b = null;
|
||||
cTHolder.imageView = null;
|
||||
cTHolder.typeImageView = null;
|
||||
cTHolder.lockImageView = null;
|
||||
cTHolder.contentBgImageView = null;
|
||||
cTHolder.courseNameTextView = null;
|
||||
cTHolder.maskView = null;
|
||||
cTHolder.downloadProgressTextView = null;
|
||||
}
|
||||
}
|
||||
|
||||
public interface Callback {
|
||||
void a(Course course);
|
||||
|
||||
void a(Course course, View view, TextView textView, boolean z);
|
||||
}
|
||||
|
||||
class DDHolder extends RecyclerView.ViewHolder {
|
||||
public DDHolder(CourseListAdapter courseListAdapter, View view) {
|
||||
super(view);
|
||||
}
|
||||
}
|
||||
|
||||
class DUHolder extends RecyclerView.ViewHolder {
|
||||
public DUHolder(CourseListAdapter courseListAdapter, View view) {
|
||||
super(view);
|
||||
}
|
||||
}
|
||||
|
||||
public CourseListAdapter(Context context, List<Course> list) {
|
||||
new String[]{"Build Astron", "Wake-up Astron", "Working test", "Planet landing", "Go ahead", "Explore onwards", "Send a signal", "Looking for clues", "Save\\U00a0Rover", "Radar detection", "Move forward and back", "Turn left and right", "Rotating in Place", "Command operations", "Escaping the Ambush", "Wait for the attack", "AstroBot\\U00a0returns", "Recover", "Collecting Parts", "Moving Parts", "Looking for Parts", "Launching an Attack", "The Final Battle", "Celebrate the victory"};
|
||||
this.a = context;
|
||||
this.c = list;
|
||||
this.d = LayoutInflater.from(context);
|
||||
DisplayUtil.a(context, this.b ? 235.0f : 135.0f);
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public int getItemCount() {
|
||||
return (this.c.size() + this.c.size()) - 1;
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public int getItemViewType(int i) {
|
||||
if (i == 0) {
|
||||
return 0;
|
||||
}
|
||||
return i % 2 == 0 ? i % 4 == 0 ? 0 : 1 : (i + 1) % 4 == 0 ? 3 : 2;
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int i) {
|
||||
final Course course = this.c.get(i / 2);
|
||||
boolean z = viewHolder instanceof CBHolder;
|
||||
int i2 = R.drawable.course_type_code_pad;
|
||||
int i3 = R.drawable.course_type_video_pad;
|
||||
if (z) {
|
||||
CBHolder cBHolder = (CBHolder) viewHolder;
|
||||
cBHolder.courseNameTextView.setText(course.getCourseName());
|
||||
int currentStatus = course.getCurrentStatus();
|
||||
if (currentStatus == 0) {
|
||||
Glide.e(this.a).a(a(course.getCourseThumbnailLock(), course.getUpdatedTime())).a(cBHolder.imageView);
|
||||
cBHolder.lockImageView.setVisibility(0);
|
||||
cBHolder.contentBgImageView.setVisibility(8);
|
||||
} else if (currentStatus == 1) {
|
||||
Glide.e(this.a).a(a(course.getCourseThumbnail(), course.getUpdatedTime())).a(cBHolder.imageView);
|
||||
cBHolder.lockImageView.setVisibility(8);
|
||||
a(cBHolder.contentBgImageView);
|
||||
} else if (currentStatus == 2) {
|
||||
Glide.e(this.a).a(a(course.getCourseThumbnail(), course.getUpdatedTime())).a(cBHolder.imageView);
|
||||
cBHolder.lockImageView.setVisibility(8);
|
||||
cBHolder.contentBgImageView.setVisibility(8);
|
||||
}
|
||||
final TextView textView = cBHolder.downloadProgressTextView;
|
||||
final View view = cBHolder.maskView;
|
||||
cBHolder.imageView.setOnClickListener(new View.OnClickListener() { // from class: com.ubt.jimu.discover.view.adapter.CourseListAdapter.1
|
||||
@Override // android.view.View.OnClickListener
|
||||
public void onClick(View view2) {
|
||||
if (course.getIsAvailable() == 0) {
|
||||
if (CourseListAdapter.this.e != null) {
|
||||
CourseListAdapter.this.e.a(course);
|
||||
}
|
||||
} else {
|
||||
if (CourseListAdapter.this.e == null || course.getCurrentStatus() <= 0) {
|
||||
return;
|
||||
}
|
||||
CourseListAdapter.this.e.a(course, view, textView, !r0.getRobotDownloaded());
|
||||
}
|
||||
}
|
||||
});
|
||||
int courseType = course.getCourseType();
|
||||
if (courseType == 0) {
|
||||
ImageView imageView = cBHolder.typeImageView;
|
||||
if (!this.b) {
|
||||
i3 = R.drawable.course_type_video;
|
||||
}
|
||||
imageView.setImageResource(i3);
|
||||
return;
|
||||
}
|
||||
if (courseType != 1) {
|
||||
return;
|
||||
}
|
||||
ImageView imageView2 = cBHolder.typeImageView;
|
||||
if (!this.b) {
|
||||
i2 = R.drawable.course_type_code;
|
||||
}
|
||||
imageView2.setImageResource(i2);
|
||||
return;
|
||||
}
|
||||
if (viewHolder instanceof CTHolder) {
|
||||
CTHolder cTHolder = (CTHolder) viewHolder;
|
||||
cTHolder.courseNameTextView.setText(course.getCourseName());
|
||||
int currentStatus2 = course.getCurrentStatus();
|
||||
if (currentStatus2 == 0) {
|
||||
Glide.e(this.a).a(a(course.getCourseThumbnailLock(), course.getUpdatedTime())).a(cTHolder.imageView);
|
||||
cTHolder.lockImageView.setVisibility(0);
|
||||
cTHolder.contentBgImageView.setVisibility(8);
|
||||
} else if (currentStatus2 == 1) {
|
||||
Glide.e(this.a).a(a(course.getCourseThumbnail(), course.getUpdatedTime())).a(cTHolder.imageView);
|
||||
cTHolder.lockImageView.setVisibility(8);
|
||||
a(cTHolder.contentBgImageView);
|
||||
} else if (currentStatus2 == 2) {
|
||||
Glide.e(this.a).a(a(course.getCourseThumbnail(), course.getUpdatedTime())).a(cTHolder.imageView);
|
||||
cTHolder.lockImageView.setVisibility(8);
|
||||
cTHolder.contentBgImageView.setVisibility(8);
|
||||
}
|
||||
final TextView textView2 = cTHolder.downloadProgressTextView;
|
||||
final View view2 = cTHolder.maskView;
|
||||
cTHolder.imageView.setOnClickListener(new View.OnClickListener() { // from class: com.ubt.jimu.discover.view.adapter.CourseListAdapter.2
|
||||
@Override // android.view.View.OnClickListener
|
||||
public void onClick(View view3) {
|
||||
if (course.getIsAvailable() == 0) {
|
||||
if (CourseListAdapter.this.e != null) {
|
||||
CourseListAdapter.this.e.a(course);
|
||||
}
|
||||
} else {
|
||||
if (CourseListAdapter.this.e == null || course.getCurrentStatus() <= 0) {
|
||||
return;
|
||||
}
|
||||
CourseListAdapter.this.e.a(course, view2, textView2, !r0.getRobotDownloaded());
|
||||
}
|
||||
}
|
||||
});
|
||||
int courseType2 = course.getCourseType();
|
||||
if (courseType2 == 0) {
|
||||
ImageView imageView3 = cTHolder.typeImageView;
|
||||
if (!this.b) {
|
||||
i3 = R.drawable.course_type_video;
|
||||
}
|
||||
imageView3.setImageResource(i3);
|
||||
return;
|
||||
}
|
||||
if (courseType2 != 1) {
|
||||
return;
|
||||
}
|
||||
ImageView imageView4 = cTHolder.typeImageView;
|
||||
if (!this.b) {
|
||||
i2 = R.drawable.course_type_code;
|
||||
}
|
||||
imageView4.setImageResource(i2);
|
||||
}
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.RecyclerView.Adapter
|
||||
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
|
||||
if (i == 0) {
|
||||
return new CBHolder(this, this.d.inflate(R.layout.course_item_content_b, viewGroup, false));
|
||||
}
|
||||
if (i == 1) {
|
||||
return new CTHolder(this, this.d.inflate(R.layout.course_item_content_t, viewGroup, false));
|
||||
}
|
||||
if (i == 2) {
|
||||
return new DUHolder(this, this.d.inflate(R.layout.course_item_divider_u, viewGroup, false));
|
||||
}
|
||||
if (i != 3) {
|
||||
return null;
|
||||
}
|
||||
return new DDHolder(this, this.d.inflate(R.layout.course_item_divider_d, viewGroup, false));
|
||||
}
|
||||
|
||||
public void a(Callback callback) {
|
||||
this.e = callback;
|
||||
}
|
||||
|
||||
private String a(String str, long j) {
|
||||
return str + "?t=" + String.valueOf(j);
|
||||
}
|
||||
|
||||
private void a(ImageView imageView) {
|
||||
imageView.setVisibility(0);
|
||||
RotateAnimation rotateAnimation = new RotateAnimation(0.0f, 360.0f, 1, 0.5f, 1, 0.5f);
|
||||
rotateAnimation.setDuration(10000L);
|
||||
rotateAnimation.setFillAfter(true);
|
||||
rotateAnimation.setInterpolator(new LinearInterpolator());
|
||||
rotateAnimation.setRepeatMode(1);
|
||||
rotateAnimation.setRepeatCount(-1);
|
||||
imageView.startAnimation(rotateAnimation);
|
||||
}
|
||||
}
|
@@ -0,0 +1,25 @@
|
||||
package com.ubt.jimu.discover.view.adapter;
|
||||
|
||||
import android.animation.Animator;
|
||||
import android.animation.ObjectAnimator;
|
||||
import android.view.View;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public class ScaleInAnimatorAdapter extends AnimatorAdapter {
|
||||
private final float f;
|
||||
|
||||
public ScaleInAnimatorAdapter(RecyclerView.Adapter adapter) {
|
||||
this(adapter, 0.5f);
|
||||
}
|
||||
|
||||
@Override // com.ubt.jimu.discover.view.adapter.AnimatorAdapter
|
||||
protected Animator[] a(View view) {
|
||||
return new ObjectAnimator[]{ObjectAnimator.ofFloat(view, "scaleX", this.f, 1.0f), ObjectAnimator.ofFloat(view, "scaleY", this.f, 1.0f)};
|
||||
}
|
||||
|
||||
public ScaleInAnimatorAdapter(RecyclerView.Adapter adapter, float f) {
|
||||
super(adapter);
|
||||
this.f = f;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user