version
fix: update:修改包名
This commit is contained in:
117
app/src/main/java/com/xwad/os/adapter/AddAppAdapter.java
Normal file
117
app/src/main/java/com/xwad/os/adapter/AddAppAdapter.java
Normal file
@@ -0,0 +1,117 @@
|
||||
package com.xwad.os.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.util.Log;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.xwad.os.BuildConfig;
|
||||
import com.xwad.os.R;
|
||||
import com.xwad.os.bean.DesktopIcon;
|
||||
import com.xwad.os.manager.AppManager;
|
||||
import com.xwad.os.utils.BitmapUtils;
|
||||
import com.xwad.os.utils.IconUtils;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
public class AddAppAdapter extends RecyclerView.Adapter<AddAppAdapter.AppHolder> {
|
||||
private static final String TAG = "AddAppAdapter";
|
||||
|
||||
private Context mContext;
|
||||
|
||||
private List<DesktopIcon> desktopIcons;
|
||||
|
||||
private Set<String> packageSet;
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public AppHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
mContext = parent.getContext();
|
||||
return new AppHolder(LayoutInflater.from(mContext).inflate(R.layout.item_add_app, parent, false));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull AppHolder holder, int position) {
|
||||
DesktopIcon desktopIcon = desktopIcons.get(position);
|
||||
String lable = desktopIcon.getLable();
|
||||
holder.tv_appname.setText(lable);
|
||||
holder.iv_icon.setImageDrawable(desktopIcon.getIcon());
|
||||
String pkg = desktopIcon.getPackageName();
|
||||
|
||||
if (packageSet != null) {
|
||||
if (packageSet.contains(pkg)) {
|
||||
holder.iv_select.setImageDrawable(mContext.getDrawable(R.drawable.icon_selected));
|
||||
} else {
|
||||
holder.iv_select.setImageDrawable(mContext.getDrawable(R.drawable.icon_unselect));
|
||||
}
|
||||
}
|
||||
|
||||
Log.e(TAG, "getView: " + pkg);
|
||||
int i = IconUtils.appClassNameList.indexOf(pkg);
|
||||
if (i != -1) {
|
||||
String val = IconUtils.appIconList.get(i);
|
||||
int resID = mContext.getResources().getIdentifier(val, "drawable", BuildConfig.APPLICATION_ID);
|
||||
if (resID == 0) {
|
||||
Log.e(TAG, "getView: not found src : " + pkg);
|
||||
holder.iv_icon.setImageBitmap(BitmapUtils.getIconBitmap(mContext, desktopIcon.getIcon()));
|
||||
} else {
|
||||
holder.iv_icon.setImageDrawable(mContext.getResources().getDrawable(resID));
|
||||
}
|
||||
} else {
|
||||
if (AppManager.ADD_NAME.equals(pkg)) {
|
||||
holder.iv_icon.setImageDrawable(desktopIcon.getIcon());
|
||||
} else {
|
||||
holder.iv_icon.setImageBitmap(BitmapUtils.getIconBitmap(mContext, desktopIcon.getIcon()));
|
||||
}
|
||||
}
|
||||
holder.root.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
if (packageSet.contains(pkg)) {
|
||||
packageSet.remove(pkg);
|
||||
AppManager.getInstance().removePakcage(pkg);
|
||||
} else {
|
||||
packageSet.add(pkg);
|
||||
AppManager.getInstance().addPakcage(pkg);
|
||||
}
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return desktopIcons == null ? 0 : desktopIcons.size();
|
||||
}
|
||||
|
||||
public void setDesktopIcons(List<DesktopIcon> desktopIcons) {
|
||||
this.desktopIcons = desktopIcons;
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
public void setPackageSet(Set<String> packageSet) {
|
||||
this.packageSet = packageSet;
|
||||
}
|
||||
|
||||
class AppHolder extends RecyclerView.ViewHolder {
|
||||
ConstraintLayout root;
|
||||
TextView tv_appname;
|
||||
ImageView iv_icon, iv_select;
|
||||
|
||||
public AppHolder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
root = itemView.findViewById(R.id.root);
|
||||
tv_appname = itemView.findViewById(R.id.tv_appname);
|
||||
iv_icon = itemView.findViewById(R.id.iv_icon);
|
||||
iv_select = itemView.findViewById(R.id.iv_select);
|
||||
}
|
||||
}
|
||||
}
|
||||
170
app/src/main/java/com/xwad/os/adapter/AppAdapter.java
Normal file
170
app/src/main/java/com/xwad/os/adapter/AppAdapter.java
Normal file
@@ -0,0 +1,170 @@
|
||||
package com.xwad.os.adapter;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.util.Log;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.hjq.toast.Toaster;
|
||||
import com.xwad.os.BuildConfig;
|
||||
import com.xwad.os.R;
|
||||
import com.xwad.os.activity.ExitActivity;
|
||||
import com.xwad.os.activity.ManualActivity;
|
||||
import com.xwad.os.activity.PasswordActivity;
|
||||
import com.xwad.os.activity.service.ServiceActivity;
|
||||
import com.xwad.os.bean.DesktopIcon;
|
||||
import com.xwad.os.manager.AppManager;
|
||||
import com.xwad.os.manager.RemoteManager;
|
||||
import com.xwad.os.utils.ApkUtils;
|
||||
import com.xwad.os.utils.BitmapUtils;
|
||||
import com.xwad.os.utils.IconUtils;
|
||||
import com.xwad.os.utils.OpenApkUtils;
|
||||
import com.xwad.os.utils.Utils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class AppAdapter extends RecyclerView.Adapter<AppAdapter.AppHolder> {
|
||||
private static final String TAG = "AppAdapter";
|
||||
|
||||
private Context mContext;
|
||||
|
||||
private List<DesktopIcon> desktopIcons;
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public AppHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
mContext = parent.getContext();
|
||||
return new AppHolder(LayoutInflater.from(mContext).inflate(R.layout.item_app, parent, false));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull AppHolder holder, int position) {
|
||||
DesktopIcon desktopIcon = desktopIcons.get(position);
|
||||
String lable = desktopIcon.getLable();
|
||||
holder.tv_appname.setText(lable);
|
||||
holder.iv_icon.setImageDrawable(desktopIcon.getIcon());
|
||||
String pkg = desktopIcon.getPackageName();
|
||||
Log.e(TAG, "getView: " + pkg);
|
||||
int i = IconUtils.appClassNameList.indexOf(pkg);
|
||||
if (i != -1) {
|
||||
String val = IconUtils.appIconList.get(i);
|
||||
int resID = mContext.getResources().getIdentifier(val, "drawable", BuildConfig.APPLICATION_ID);
|
||||
if (resID == 0) {
|
||||
Log.e(TAG, "getView: not found src : " + pkg);
|
||||
holder.iv_icon.setImageBitmap(BitmapUtils.getIconBitmap(mContext, desktopIcon.getIcon()));
|
||||
} else {
|
||||
holder.iv_icon.setImageDrawable(mContext.getResources().getDrawable(resID));
|
||||
}
|
||||
} else {
|
||||
switch (pkg) {
|
||||
case AppManager.ADD_NAME:
|
||||
case AppManager.UPDATE_NAME:
|
||||
case AppManager.MANUAL_NAME:
|
||||
case AppManager.SERVICE_NAME:
|
||||
holder.iv_icon.setImageDrawable(desktopIcon.getIcon());
|
||||
break;
|
||||
default:
|
||||
holder.iv_icon.setImageBitmap(BitmapUtils.getIconBitmap(mContext, desktopIcon.getIcon()));
|
||||
break;
|
||||
}
|
||||
}
|
||||
holder.root.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
switch (pkg) {
|
||||
case AppManager.ADD_NAME:
|
||||
mContext.startActivity(new Intent(mContext, PasswordActivity.class));
|
||||
break;
|
||||
case AppManager.UPDATE_NAME:
|
||||
Intent intent = new Intent();
|
||||
ComponentName componentName = new ComponentName("com.uiui.zy", "com.uiui.zy.activity.update.UpdateActivity");
|
||||
intent.setComponent(componentName);
|
||||
try {
|
||||
mContext.startActivity(intent);
|
||||
} catch (Exception e) {
|
||||
Toaster.show("打开失败,请检查是否安装");
|
||||
Log.e(TAG, "onClick: " + e.getMessage());
|
||||
}
|
||||
break;
|
||||
case AppManager.MANUAL_NAME:
|
||||
mContext.startActivity(new Intent(mContext, ManualActivity.class));
|
||||
break;
|
||||
case AppManager.SERVICE_NAME:
|
||||
mContext.startActivity(new Intent(mContext, ServiceActivity.class));
|
||||
break;
|
||||
case "com.jxw.zwpg":
|
||||
OpenApkUtils.getInstance().openZuowenpigai6();
|
||||
break;
|
||||
case "com.jxw.gb.zwpg":
|
||||
OpenApkUtils.getInstance().openZuowenpigai();
|
||||
break;
|
||||
case "com.jxw.huiben":
|
||||
OpenApkUtils.getInstance().openARHuiben();
|
||||
break;
|
||||
case AppManager.DESKTOP_EXIT:
|
||||
exitDesktop();
|
||||
break;
|
||||
default:
|
||||
boolean settingOtherAppInstaller = RemoteManager.getInstance().showThirdApp();
|
||||
if (!settingOtherAppInstaller && !ApkUtils.isSystemApp(mContext, desktopIcon.getPackageName())) {
|
||||
Toaster.show("已禁止应用打开");
|
||||
} else {
|
||||
OpenApkUtils.getInstance().openApp(desktopIcon.getPackageName(), desktopIcon.getClassName());
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void exitDesktop() {
|
||||
Intent intent = new Intent("Receiver_Refresh_Password_Action");
|
||||
intent.setPackage("com.uiui.zy");
|
||||
mContext.sendBroadcast(intent);
|
||||
|
||||
boolean is_activation = RemoteManager.getInstance().getSnIsActivation();
|
||||
if (is_activation) {
|
||||
mContext.startActivity(new Intent(mContext, ExitActivity.class));
|
||||
} else {
|
||||
Utils.exitDesktop((Activity) mContext);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return desktopIcons == null ? 0 : desktopIcons.size();
|
||||
}
|
||||
|
||||
public List<DesktopIcon> getDesktopIcons() {
|
||||
return desktopIcons;
|
||||
}
|
||||
|
||||
public void setDesktopIcons(List<DesktopIcon> desktopIcons) {
|
||||
this.desktopIcons = desktopIcons;
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
class AppHolder extends RecyclerView.ViewHolder {
|
||||
ConstraintLayout root;
|
||||
TextView tv_appname;
|
||||
ImageView iv_icon;
|
||||
|
||||
public AppHolder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
root = itemView.findViewById(R.id.root);
|
||||
tv_appname = itemView.findViewById(R.id.tv_appname);
|
||||
iv_icon = itemView.findViewById(R.id.iv_icon);
|
||||
}
|
||||
}
|
||||
}
|
||||
139
app/src/main/java/com/xwad/os/adapter/FileAdapter.java
Normal file
139
app/src/main/java/com/xwad/os/adapter/FileAdapter.java
Normal file
@@ -0,0 +1,139 @@
|
||||
package com.xwad.os.adapter;
|
||||
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.util.Log;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.hjq.toast.Toaster;
|
||||
import com.xwad.os.BuildConfig;
|
||||
import com.xwad.os.R;
|
||||
import com.xwad.os.activity.ManualActivity;
|
||||
import com.xwad.os.activity.PasswordActivity;
|
||||
import com.xwad.os.activity.service.ServiceActivity;
|
||||
import com.xwad.os.bean.DesktopIcon;
|
||||
import com.xwad.os.manager.AppManager;
|
||||
import com.xwad.os.manager.RemoteManager;
|
||||
import com.xwad.os.utils.ApkUtils;
|
||||
import com.xwad.os.utils.BitmapUtils;
|
||||
import com.xwad.os.utils.IconUtils;
|
||||
import com.xwad.os.utils.OpenApkUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class FileAdapter extends RecyclerView.Adapter<FileAdapter.AppHolder> {
|
||||
private static final String TAG = "FileAdapter";
|
||||
|
||||
private Context mContext;
|
||||
|
||||
private List<DesktopIcon> desktopIcons;
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public AppHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
mContext = parent.getContext();
|
||||
return new AppHolder(LayoutInflater.from(mContext).inflate(R.layout.item_file, parent, false));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull AppHolder holder, int position) {
|
||||
DesktopIcon desktopIcon = desktopIcons.get(position);
|
||||
String lable = desktopIcon.getLable();
|
||||
holder.tv_appname.setText(lable);
|
||||
holder.iv_icon.setImageDrawable(desktopIcon.getIcon());
|
||||
String pkg = desktopIcon.getPackageName();
|
||||
Log.e(TAG, "getView: " + pkg);
|
||||
int i = IconUtils.appClassNameList.indexOf(pkg);
|
||||
if (i != -1) {
|
||||
String val = IconUtils.appIconList.get(i);
|
||||
int resID = mContext.getResources().getIdentifier(val, "drawable", BuildConfig.APPLICATION_ID);
|
||||
if (resID == 0) {
|
||||
Log.e(TAG, "getView: not found src : " + pkg);
|
||||
holder.iv_icon.setImageBitmap(BitmapUtils.getIconBitmap(mContext, desktopIcon.getIcon()));
|
||||
} else {
|
||||
holder.iv_icon.setImageDrawable(mContext.getResources().getDrawable(resID));
|
||||
}
|
||||
} else {
|
||||
switch (pkg) {
|
||||
case AppManager.ADD_NAME:
|
||||
case AppManager.UPDATE_NAME:
|
||||
case AppManager.MANUAL_NAME:
|
||||
case AppManager.SERVICE_NAME:
|
||||
holder.iv_icon.setImageDrawable(desktopIcon.getIcon());
|
||||
break;
|
||||
default:
|
||||
holder.iv_icon.setImageBitmap(BitmapUtils.getIconBitmap(mContext, desktopIcon.getIcon()));
|
||||
break;
|
||||
}
|
||||
}
|
||||
holder.root.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
switch (pkg) {
|
||||
case AppManager.ADD_NAME:
|
||||
mContext.startActivity(new Intent(mContext, PasswordActivity.class));
|
||||
break;
|
||||
case AppManager.UPDATE_NAME:
|
||||
Intent intent = new Intent();
|
||||
ComponentName componentName = new ComponentName("com.uiui.zy", "com.uiui.zy.activity.update.UpdateActivity");
|
||||
intent.setComponent(componentName);
|
||||
mContext.startActivity(intent);
|
||||
break;
|
||||
case AppManager.MANUAL_NAME:
|
||||
mContext.startActivity(new Intent(mContext, ManualActivity.class));
|
||||
break;
|
||||
case AppManager.SERVICE_NAME:
|
||||
mContext.startActivity(new Intent(mContext, ServiceActivity.class));
|
||||
break;
|
||||
case "com.uiui.zyappstore":
|
||||
OpenApkUtils.getInstance().openApp(desktopIcon.getPackageName(), desktopIcon.getClassName());
|
||||
break;
|
||||
default:
|
||||
boolean settingOtherAppInstaller = RemoteManager.getInstance().showThirdApp();
|
||||
if (!settingOtherAppInstaller && !ApkUtils.isSystemApp(mContext, desktopIcon.getPackageName())) {
|
||||
Toaster.show("已禁止应用打开");
|
||||
} else {
|
||||
OpenApkUtils.getInstance().openApp(desktopIcon.getPackageName(), desktopIcon.getClassName());
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return desktopIcons == null ? 0 : desktopIcons.size();
|
||||
}
|
||||
|
||||
public List<DesktopIcon> getDesktopIcons() {
|
||||
return desktopIcons;
|
||||
}
|
||||
|
||||
public void setDesktopIcons(List<DesktopIcon> desktopIcons) {
|
||||
this.desktopIcons = desktopIcons;
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
class AppHolder extends RecyclerView.ViewHolder {
|
||||
ConstraintLayout root;
|
||||
TextView tv_appname;
|
||||
ImageView iv_icon;
|
||||
|
||||
public AppHolder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
root = itemView.findViewById(R.id.root);
|
||||
tv_appname = itemView.findViewById(R.id.tv_appname);
|
||||
iv_icon = itemView.findViewById(R.id.iv_icon);
|
||||
}
|
||||
}
|
||||
}
|
||||
120
app/src/main/java/com/xwad/os/adapter/HomeworkAdapter.java
Normal file
120
app/src/main/java/com/xwad/os/adapter/HomeworkAdapter.java
Normal file
@@ -0,0 +1,120 @@
|
||||
package com.xwad.os.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.text.TextUtils;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.xwad.os.R;
|
||||
import com.xwad.os.activity.homework.HomeworkDetailsActivity;
|
||||
import com.xwad.os.bean.HomeworkBean;
|
||||
import com.xwad.os.utils.TimeUtils;
|
||||
import com.xwad.os.view.HorizontalDecorationWithoutFirst;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class HomeworkAdapter extends RecyclerView.Adapter<HomeworkAdapter.Holder> {
|
||||
private static final String TAG = "HomeworkAdapter";
|
||||
|
||||
private Context mContext;
|
||||
private List<HomeworkBean> mHomeworkList;
|
||||
|
||||
public void setHomeworkList(List<HomeworkBean> homeworkList) {
|
||||
mHomeworkList = homeworkList;
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public Holder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
mContext = parent.getContext();
|
||||
return new Holder(LayoutInflater.from(mContext).inflate(R.layout.item_homework, parent, false));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull Holder holder, int position) {
|
||||
HomeworkBean homeworkBean = mHomeworkList.get(position);
|
||||
holder.tv_title.setText(homeworkBean.getSubject().getName() + "作业");
|
||||
// switch (homeworkBean.getFile_type()) {
|
||||
// case 2:
|
||||
// holder.tv_type.setText("图片");
|
||||
// break;
|
||||
// case 3:
|
||||
// holder.tv_type.setText("视频");
|
||||
// break;
|
||||
// case 4:
|
||||
// holder.tv_type.setText("文档");
|
||||
// break;
|
||||
// default:
|
||||
// holder.tv_type.setText("文字");
|
||||
// }
|
||||
switch (homeworkBean.getStatus()) {
|
||||
default:
|
||||
case 0:
|
||||
holder.iv_statu.setImageDrawable(mContext.getDrawable(R.drawable.icon_hw_statu_unfinished));
|
||||
break;
|
||||
case 1:
|
||||
holder.iv_statu.setImageDrawable(mContext.getDrawable(R.drawable.icon_hw_statu_finish));
|
||||
break;
|
||||
}
|
||||
holder.tv_type.setText(homeworkBean.getContent());
|
||||
holder.tv_time.setText(TimeUtils.getHomeworkTime(homeworkBean.getCreated_at()));
|
||||
|
||||
List<String> urls = homeworkBean.getFile_url();
|
||||
if (urls != null && !urls.isEmpty()) {
|
||||
urls.removeIf(TextUtils::isEmpty);
|
||||
HomeworkPicAdapter homeworkPicAdapter = new HomeworkPicAdapter();
|
||||
homeworkPicAdapter.setUrls(urls);
|
||||
homeworkPicAdapter.setId(homeworkBean.getId());
|
||||
holder.rv_pic.setVisibility(View.VISIBLE);
|
||||
holder.rv_pic.setAdapter(homeworkPicAdapter);
|
||||
} else {
|
||||
holder.rv_pic.setVisibility(View.INVISIBLE);
|
||||
}
|
||||
|
||||
holder.root.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
Intent intent = new Intent(mContext, HomeworkDetailsActivity.class);
|
||||
intent.putExtra("HomeworkBeanID", homeworkBean.getId());
|
||||
mContext.startActivity(intent);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return mHomeworkList == null ? 0 : mHomeworkList.size();
|
||||
}
|
||||
|
||||
static class Holder extends RecyclerView.ViewHolder {
|
||||
ConstraintLayout root;
|
||||
RecyclerView rv_pic;
|
||||
TextView tv_title, tv_type, tv_time;
|
||||
ImageView iv_statu;
|
||||
|
||||
Holder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
root = itemView.findViewById(R.id.root);
|
||||
rv_pic = itemView.findViewById(R.id.rv_pic);
|
||||
tv_title = itemView.findViewById(R.id.tv_title);
|
||||
tv_type = itemView.findViewById(R.id.tv_type);
|
||||
tv_time = itemView.findViewById(R.id.tv_time);
|
||||
iv_statu = itemView.findViewById(R.id.iv_statu);
|
||||
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(root.getContext());
|
||||
linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
|
||||
rv_pic.setLayoutManager(linearLayoutManager);
|
||||
rv_pic.addItemDecoration(new HorizontalDecorationWithoutFirst(8, root.getContext()));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,112 @@
|
||||
package com.xwad.os.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.bumptech.glide.Priority;
|
||||
import com.bumptech.glide.load.DecodeFormat;
|
||||
import com.bumptech.glide.load.engine.DiskCacheStrategy;
|
||||
import com.bumptech.glide.request.RequestOptions;
|
||||
import com.bumptech.glide.request.target.Target;
|
||||
import com.xwad.os.R;
|
||||
import com.xwad.os.utils.FileUtil;
|
||||
import com.xwad.os.utils.GlideLoadUtils;
|
||||
import com.wgw.photo.preview.PhotoPreview;
|
||||
import com.wgw.photo.preview.interfaces.ImageLoader;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
|
||||
public class HomeworkDetailPicAdapter extends RecyclerView.Adapter<HomeworkDetailPicAdapter.Holder> {
|
||||
private static final String TAG = "HomeworkPicAdapter";
|
||||
|
||||
private Context mContext;
|
||||
private List<String> mUrls;
|
||||
|
||||
public void setUrls(List<String> urls) {
|
||||
mUrls = urls;
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public Holder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
mContext = parent.getContext();
|
||||
return new Holder(LayoutInflater.from(mContext).inflate(R.layout.item_homework_detail_pic, parent, false));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull Holder holder, int position) {
|
||||
String url = mUrls.get(position);
|
||||
GlideLoadUtils.getInstance().glideLoadSetSize(mContext, url, holder.nv_pic, R.mipmap.ic_launcher);
|
||||
File file = new File(FileUtil.getDownLoadPath(mContext) + FileUtil.getFileNamefromURL(url));
|
||||
if (file.exists()) {
|
||||
holder.iv_download.setVisibility(View.GONE);
|
||||
holder.nv_pic.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
// OpenFileUtil.openFile(mContext, file);
|
||||
PhotoPreview.with((FragmentActivity) mContext)
|
||||
.sources(mUrls)
|
||||
.defaultShowPosition(position)
|
||||
.imageLoader(new ImageLoader() {
|
||||
@Override
|
||||
public void onLoadImage(int position, @Nullable Object source, @NonNull ImageView imageView) {
|
||||
RequestOptions requestOptions = new RequestOptions()
|
||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
||||
.override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL)
|
||||
.priority(Priority.HIGH)
|
||||
.format(DecodeFormat.PREFER_RGB_565);
|
||||
Glide.with(imageView.getContext())
|
||||
.setDefaultRequestOptions(requestOptions)
|
||||
.load((String) source)
|
||||
.into(imageView);
|
||||
// GlideLoadUtils.getInstance().glideLoad(imageView.getContext(), (String)source, imageView, R.drawable.icon_no_homework);
|
||||
}
|
||||
})
|
||||
.build()
|
||||
.show(holder.nv_pic); // 指定缩略图
|
||||
}
|
||||
});
|
||||
} else {
|
||||
|
||||
holder.iv_download.setVisibility(View.VISIBLE);
|
||||
holder.iv_download.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
FileUtil.ariaDownloadUrl(mContext, url);
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return mUrls == null ? 0 : mUrls.size();
|
||||
}
|
||||
|
||||
static class Holder extends RecyclerView.ViewHolder {
|
||||
|
||||
ImageView nv_pic;
|
||||
ImageView iv_download;
|
||||
|
||||
Holder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
nv_pic = itemView.findViewById(R.id.nv_pic);
|
||||
iv_download = itemView.findViewById(R.id.iv_download);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,128 @@
|
||||
package com.xwad.os.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.bumptech.glide.Priority;
|
||||
import com.bumptech.glide.load.DecodeFormat;
|
||||
import com.bumptech.glide.load.engine.DiskCacheStrategy;
|
||||
import com.bumptech.glide.request.RequestOptions;
|
||||
import com.bumptech.glide.request.target.Target;
|
||||
import com.xwad.os.R;
|
||||
import com.xwad.os.bean.HomeworkBean;
|
||||
import com.xwad.os.utils.FileUtil;
|
||||
import com.xwad.os.utils.GlideLoadUtils;
|
||||
import com.xwad.os.utils.OpenFileUtil;
|
||||
import com.wgw.photo.preview.PhotoPreview;
|
||||
import com.wgw.photo.preview.interfaces.ImageLoader;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
|
||||
public class HomeworkDetailPicAdapter2 extends RecyclerView.Adapter<HomeworkDetailPicAdapter2.Holder> {
|
||||
private static final String TAG = "HomeworkPicAdapter";
|
||||
|
||||
private Context mContext;
|
||||
private HomeworkBean mHomeworkBean;
|
||||
|
||||
public void setHomeworkBean(HomeworkBean homeworkBean) {
|
||||
mHomeworkBean = homeworkBean;
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public Holder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
mContext = parent.getContext();
|
||||
return new Holder(LayoutInflater.from(mContext).inflate(R.layout.item_homework_detail_pic, parent, false));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull Holder holder, int position) {
|
||||
List<String> urls = mHomeworkBean.getFile_url();
|
||||
String url = urls.get(position);
|
||||
File file = new File(FileUtil.getDownLoadPath(mContext) + FileUtil.getFileNamefromURL(url));
|
||||
if (file.exists()) {
|
||||
GlideLoadUtils.getInstance().glideLoadSetSize(mContext, file, holder.nv_pic, R.mipmap.ic_launcher);
|
||||
holder.iv_download.setVisibility(View.GONE);
|
||||
if (mHomeworkBean.getFile_type() == 3) {
|
||||
holder.iv_play.setVisibility(View.VISIBLE);
|
||||
} else {
|
||||
holder.iv_play.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
holder.nv_pic.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
if (mHomeworkBean.getFile_type() == 3) {
|
||||
OpenFileUtil.openFile(mContext, file);
|
||||
} else {
|
||||
PhotoPreview.with((FragmentActivity) mContext)
|
||||
.sources(urls)
|
||||
.imageLoader(new ImageLoader() {
|
||||
@Override
|
||||
public void onLoadImage(int position, @Nullable Object source, @NonNull ImageView imageView) {
|
||||
RequestOptions requestOptions = new RequestOptions()
|
||||
.diskCacheStrategy(DiskCacheStrategy.ALL)
|
||||
.override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL)
|
||||
.priority(Priority.HIGH)
|
||||
.format(DecodeFormat.PREFER_RGB_565);
|
||||
Glide.with(imageView.getContext())
|
||||
.setDefaultRequestOptions(requestOptions)
|
||||
.load((String) source)
|
||||
.into(imageView);
|
||||
//GlideLoadUtils.getInstance().glideLoad(imageView.getContext(), (String)source, imageView, R.drawable.icon_no_homework);
|
||||
}
|
||||
})
|
||||
.build()
|
||||
.show(holder.nv_pic); // 指定缩略图
|
||||
}
|
||||
}
|
||||
});
|
||||
} else {
|
||||
GlideLoadUtils.getInstance().glideLoadSetSize(mContext, url, holder.nv_pic, R.mipmap.ic_launcher);
|
||||
if (mHomeworkBean.getFile_type() == 3) {
|
||||
holder.iv_download.setVisibility(View.VISIBLE);
|
||||
holder.iv_download.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
FileUtil.ariaDownloadUrl(mContext, url);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
FileUtil.ariaDownloadUrl(mContext, url);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return mHomeworkBean == null ? 0 : mHomeworkBean.getFile_url().size();
|
||||
}
|
||||
|
||||
static class Holder extends RecyclerView.ViewHolder {
|
||||
|
||||
ImageView nv_pic;
|
||||
ImageView iv_download;
|
||||
ImageView iv_play;
|
||||
|
||||
Holder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
nv_pic = itemView.findViewById(R.id.nv_pic);
|
||||
iv_download = itemView.findViewById(R.id.iv_download);
|
||||
iv_play = itemView.findViewById(R.id.iv_play);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
package com.xwad.os.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.shehuan.niv.NiceImageView;
|
||||
import com.xwad.os.R;
|
||||
import com.xwad.os.activity.homework.HomeworkDetailsActivity;
|
||||
import com.xwad.os.utils.FileUtil;
|
||||
import com.xwad.os.utils.GlideLoadUtils;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
|
||||
public class HomeworkPicAdapter extends RecyclerView.Adapter<HomeworkPicAdapter.Holder> {
|
||||
private static final String TAG = "HomeworkPicAdapter";
|
||||
|
||||
private Context mContext;
|
||||
private List<String> mUrls;
|
||||
private int mId = -1;
|
||||
|
||||
public void setUrls(List<String> urls) {
|
||||
mUrls = urls;
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
public void setId(int id) {
|
||||
mId = id;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public Holder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
mContext = parent.getContext();
|
||||
return new Holder(LayoutInflater.from(mContext).inflate(R.layout.item_homework_pic, parent, false));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull Holder holder, int position) {
|
||||
String url = mUrls.get(position);
|
||||
File file = new File(FileUtil.getDownLoadPath(mContext) + FileUtil.getFileNamefromURL(url));
|
||||
if (file.exists()) {
|
||||
GlideLoadUtils.getInstance().glideLoad(mContext, file, holder.nv_pic, R.drawable.icon_no_homework);
|
||||
} else {
|
||||
GlideLoadUtils.getInstance().glideLoad(mContext, url, holder.nv_pic, R.drawable.icon_no_homework);
|
||||
}
|
||||
holder.cl_root.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
Intent intent = new Intent(mContext, HomeworkDetailsActivity.class);
|
||||
intent.putExtra("HomeworkBeanID", mId);
|
||||
mContext.startActivity(intent);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return mUrls == null ? 0 : mUrls.size();
|
||||
}
|
||||
|
||||
static class Holder extends RecyclerView.ViewHolder {
|
||||
ConstraintLayout cl_root;
|
||||
NiceImageView nv_pic;
|
||||
|
||||
Holder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
cl_root = itemView.findViewById(R.id.cl_root);
|
||||
nv_pic = itemView.findViewById(R.id.nv_pic);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user