Skip to content

Commit 702f770

Browse files
committed
修改空格图片上传view
1 parent cffa3d4 commit 702f770

File tree

9 files changed

+52
-61
lines changed

9 files changed

+52
-61
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@
113113
# 导入指南
114114
115115
``` groovy
116-
def quicklib = "4.2.0"
116+
def quicklib = "4.4.0"
117117
118118
// quicklib(Base)
119119
implementation "com.sdwfqin.quicklib:quicklib:$quicklib"

app/src/main/java/com/sdwfqin/quickseed/model/PictureModel.java

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,19 @@
22

33
import android.net.Uri;
44

5-
import com.sdwfqin.widget.pictureupload.PictureUpModel;
5+
import com.sdwfqin.widget.pictureupload.PictureUploadModel;
66

77
/**
88
* 描述:
99
*
1010
* @author zhangqin
11-
* @date 2018/5/31
11+
* @date 2018/5/3,1
1212
*/
13-
public class PictureModel extends PictureUpModel {
13+
public class PictureModel implements PictureUploadModel {
1414

1515
private Uri imgPath;
1616

1717
public PictureModel(Uri imgPath) {
18-
super(imgPath);
1918
this.imgPath = imgPath;
2019
}
2120

@@ -31,7 +30,12 @@ public void setImgPath(Uri imgPath) {
3130
public String toString() {
3231
return "PictureModel{" +
3332
"imgPath='" + imgPath + '\'' +
34-
", image=" + image +
33+
", image=" + imgPath +
3534
'}';
3635
}
36+
37+
@Override
38+
public Object getPictureImage() {
39+
return imgPath;
40+
}
3741
}

app/src/main/java/com/sdwfqin/quickseed/ui/components/PictureUploadActivity.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@ public class PictureUploadActivity extends SampleBaseActivity<ActivityPictureUpl
2626

2727
public static final int RESULT_PHOTO_SELECT = 101;
2828

29-
// PictureUploadView<PictureModel> mPic;
30-
3129
@Override
3230
protected ActivityPictureUploadBinding getViewBinding() {
3331
return ActivityPictureUploadBinding.inflate(getLayoutInflater());
@@ -39,9 +37,8 @@ protected void initEventAndData() {
3937
mTopBar.addLeftBackImageButton()
4038
.setOnClickListener(v -> finish());
4139

42-
// mPic = mBinding.pic;
43-
4440
mBinding.pic.setMaxColumn(3);
41+
mBinding.pic.setMaxSize(12);
4542
mBinding.pic.setPicUploadCallback(new PictureUploadCallback<PictureModel>() {
4643
@Override
4744
public void click(int position, PictureModel pictureModel, List<PictureModel> list) {
@@ -76,7 +73,7 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
7673
for (int i = 0; i < selectList.size(); i++) {
7774
models.add(new PictureModel(selectList.get(i)));
7875
}
79-
mBinding.pic.setAddData(models);
76+
mBinding.pic.addData(models);
8077

8178
// 刷新相册图片
8279
if (selectList.size() == 1) {

config.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
ext {
22

3-
versionCode = 202007231
4-
versionName = "4.3.0"
3+
versionCode = 202007301
4+
versionName = "4.4.0"
55

66
qmui = "2.0.0-alpha10"
77
okhttp = "4.7.2"

widget/src/main/java/com/sdwfqin/widget/pictureupload/PictureUpModel.java

Lines changed: 0 additions & 29 deletions
This file was deleted.

widget/src/main/java/com/sdwfqin/widget/pictureupload/PictureUploadAdapter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
* @author zhangqin
1818
* @date 2018/5/31
1919
*/
20-
public class PictureUploadAdapter<T extends PictureUpModel> extends BaseQuickAdapter<T, BaseViewHolder> {
20+
public class PictureUploadAdapter<T extends PictureUploadModel> extends BaseQuickAdapter<T, BaseViewHolder> {
2121

2222
public PictureUploadAdapter(int layoutResId, @Nullable List<T> data) {
2323
super(layoutResId, data);
@@ -30,7 +30,7 @@ protected void convert(BaseViewHolder helper, T item) {
3030

3131
if (item != null) {
3232
ImageLoader imageLoader = new ImageLoader.Builder()
33-
.setImagePath(item.getImage())
33+
.setImagePath(item.getPictureImage())
3434
.setPlaceholder(R.mipmap.image_loading)
3535
.setErrorImage(R.mipmap.image_load_err)
3636
.build(iiImg);

widget/src/main/java/com/sdwfqin/widget/pictureupload/PictureUploadCallback.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
* @author zhangqin
99
* @date 2018/5/31
1010
*/
11-
public interface PictureUploadCallback<T extends PictureUpModel> {
11+
public interface PictureUploadCallback<T extends PictureUploadModel> {
1212

1313
/**
1414
* 移除某个图片
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package com.sdwfqin.widget.pictureupload;
2+
3+
/**
4+
* 描述:
5+
*
6+
* @author zhangqin
7+
* @date 2018/5/31
8+
*/
9+
public interface PictureUploadModel {
10+
11+
/**
12+
* 获取图像文件
13+
*/
14+
Object getPictureImage();
15+
}

widget/src/main/java/com/sdwfqin/widget/pictureupload/PictureUploadView.java

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,14 @@
55
import android.util.AttributeSet;
66
import android.view.LayoutInflater;
77
import android.view.View;
8-
import android.widget.RelativeLayout;
8+
import android.widget.FrameLayout;
99

1010
import androidx.annotation.LayoutRes;
1111
import androidx.annotation.Nullable;
1212
import androidx.recyclerview.widget.GridLayoutManager;
1313
import androidx.recyclerview.widget.RecyclerView;
1414

1515
import com.blankj.utilcode.util.ConvertUtils;
16-
import com.blankj.utilcode.util.LogUtils;
1716
import com.sdwfqin.widget.R;
1817

1918
import java.util.ArrayList;
@@ -25,7 +24,7 @@
2524
* @author zhangqin
2625
* @date 2018/5/31
2726
*/
28-
public class PictureUploadView<T extends PictureUpModel> extends RelativeLayout {
27+
public class PictureUploadView<T extends PictureUploadModel> extends FrameLayout {
2928

3029
private Context mContext;
3130

@@ -61,6 +60,7 @@ public PictureUploadView(Context context, @Nullable AttributeSet attrs) {
6160
mContext = context;
6261
LayoutInflater.from(context).inflate(R.layout.quick_picture_upload_view, this);
6362
mRecyclerView = findViewById(R.id.rv);
63+
mRecyclerView.setNestedScrollingEnabled(false);
6464

6565
mDataList.add(null);
6666
initList();
@@ -110,12 +110,11 @@ public void getItemOffsets(Rect outRect, View view, RecyclerView parent, Recycle
110110

111111
} else if (i == R.id.ii_del) {
112112
if (mDataList.size() == mMaxSize && mDataList.get(mDataList.size() - 1) != null) {
113-
mUploadAdapter.remove(position);
113+
mUploadAdapter.removeAt(position);
114114
mDataList.add(null);
115-
mUploadAdapter.setNewData(mDataList);
115+
mUploadAdapter.setList(mDataList);
116116
} else {
117-
mUploadAdapter.remove(position);
118-
mUploadAdapter.notifyDataSetChanged();
117+
mUploadAdapter.removeAt(position);
119118
}
120119
if (mCallback == null) {
121120
return;
@@ -165,20 +164,28 @@ public List<T> getData() {
165164
*/
166165
public void setNewData(List<T> data) {
167166
mDataList.clear();
167+
mDataList = data == null ? new ArrayList<>() : data;
168168
int size = mDataList.size();
169169
if (size < mMaxSize && mDataList.get(size - 1) != null) {
170170
// 如果数量小于最大值,添加一个null作为占位符
171171
mDataList.add(null);
172172
}
173-
mDataList = data;
174-
mUploadAdapter.notifyDataSetChanged();
175-
// mUploadAdapter.setNewData(mDataList);
173+
mUploadAdapter.setList(mDataList);
176174
}
177175

178176
/**
179177
* 添加图片
180178
*/
181-
public void setAddData(List<T> data) {
179+
public void addData(T data) {
180+
List<T> list = new ArrayList<>();
181+
list.add(data);
182+
addData(list);
183+
}
184+
185+
/**
186+
* 添加图片
187+
*/
188+
public void addData(List<T> data) {
182189
int size = mDataList.size();
183190
if (size <= mMaxSize && mDataList.get(size - 1) == null) {
184191
mDataList.remove(mDataList.size() - 1);
@@ -188,17 +195,14 @@ public void setAddData(List<T> data) {
188195
// 如果数量小于最大值,添加一个null作为占位符
189196
mDataList.add(null);
190197
}
191-
LogUtils.e(mDataList);
192-
// fixme brvah3
193-
mUploadAdapter.notifyDataSetChanged();
194-
// mUploadAdapter.setNewData(mDataList);
198+
mUploadAdapter.setList(mDataList);
195199
}
196200

197201
/**
198202
* 移除全部图片
199203
*/
200204
public void removeAll() {
201-
mUploadAdapter.setNewData(null);
205+
mUploadAdapter.setList(null);
202206
mDataList.clear();
203207
}
204208

0 commit comments

Comments
 (0)