Commit 062cfe9e authored by linfeng's avatar linfeng

Merge branch 'dev-member-john' of http://113.105.137.151:22280/lify/rvapp into master-video

parents fa2aeac0 51a60406
......@@ -15,6 +15,7 @@ import com.base.utils.CrashHandler;
import com.base.utils.eventbusmodel.EventMimcRouse;
import com.base.utils.eventbusmodel.EventNoActivity;
import com.base.utils.eventbusmodel.EventRestartApp;
import com.bumptech.glide.request.target.ViewTarget;
import com.frame.base.FrameApp;
import com.frame.base.bean.BeanHeartbeat;
import com.frame.base.manager.MyFrameManager;
......@@ -50,6 +51,7 @@ public class RvClientApplication extends FrameApp {
@Override
public void onCreate() {
super.onCreate();
ViewTarget.setTagId(R.id.glideIndexTag);
Log.e("xxxxxxxxxxxxxxxxxxxxx", "RvClientApplication_onCreate");
StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder();
StrictMode.setVmPolicy(builder.build());
......
<?xml version="1.0" encoding="utf-8"?>
<resources>
<item name="glideIndexTag" type="id"/>
</resources>
......@@ -41,6 +41,11 @@ public abstract class BaseWrapperFragment<P extends MvpPresenter> extends Suppor
private Unbinder unbinder;
protected CompositeDisposable disposable;
private boolean isLoadData = false;
protected boolean isShowDelete = false;
public void changeShowDelete() {
this.isShowDelete = !this.isShowDelete;
}
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
......@@ -188,4 +193,6 @@ public abstract class BaseWrapperFragment<P extends MvpPresenter> extends Suppor
public void netUnAvailable() {
}
}
......@@ -129,6 +129,9 @@ public class ApiConfig {
//我的发布
public static String RVENTHUSIAST_GETBYUSERID_LIST = RvFrameConfig.HOST + "/api/im/msg/getByUserId";
// 批量删除我的发现
public static String RVENTHUSIAST_MSG_DELETES = RvFrameConfig.HOST + "/api/im/msg/delete";
//删除消息
public static String RVENTHUSIAST_MSG_DELETE = RvFrameConfig.IMA_BASEUSRL + "/b/circle/msg/delete";
......@@ -136,7 +139,7 @@ public class ApiConfig {
public static String RVENTHUSIAST_GETUSERMEMBER = RvFrameConfig.HOST + "/api/admin/baseUserMember/app/getUserMember";
//im登录
public static String DISCOVERY_IM_LOGIN = RvFrameConfig.HOST + "/api/auth/jwt/imi/login";
public static String DISCOVERY_IM_LOGIN = RvFrameConfig.HOST + "/api/auth/jwt/imi/login";
/**
* 检查token是否有效
......
package com.rv.rvmine.adapter;
import android.text.TextUtils;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
import com.bumptech.glide.request.RequestOptions;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.ruiwenliu.wrapper.util.BaseGlideHolder;
import com.ruiwenliu.wrapper.util.TransformationUtil;
import com.ruiwenliu.wrapper.util.glide.GlideOptions;
import com.rv.rvmine.R;
import com.rv.rvmine.bean.MyReleaseAskBean;
import com.rv.rvmine.bean.MyReleaseBean;
import java.util.ArrayList;
import java.util.List;
public class MyReleaseAskAdapter extends BaseQuickAdapter<MyReleaseAskBean.DataBean, BaseGlideHolder> {
private boolean isShowDelete = false; // 默认不显示选择框
private List<MyReleaseAskBean.DataBean> lists = new ArrayList<>(); // 选中
public void changeBeanStatus(MyReleaseAskBean.DataBean bean) {
if (lists.contains(bean)) {
lists.remove(bean);
} else {
lists.add(bean);
}
}
public void removeSelect(MyReleaseAskBean.DataBean bean) {
if (lists.contains(bean)) lists.remove(bean);
}
public List<MyReleaseAskBean.DataBean> getSelectLists() {
return lists;
}
public void clear() {
lists.clear();
}
public MyReleaseAskAdapter() {
super(R.layout.rv_item_rv_release_pat);
}
public void changeViewShowState(boolean b) {
this.isShowDelete = b;
notifyDataSetChanged();
}
@Override
protected void convert(BaseGlideHolder helper, MyReleaseAskBean.DataBean item) {
if (item != null) {
if (!TextUtils.isEmpty(item.getTitle()))
helper.setText(R.id.tv_title, item.getTitle());
helper.setGone(R.id.iv_isvideo, false);
if (isShowDelete) {
helper.setVisible(R.id.rl_delete_select, true);
} else {
helper.setVisible(R.id.rl_delete_select, false);
}
if (lists.contains(item)) {
helper.setVisible(R.id.iv_delete_select, true);
} else {
helper.setVisible(R.id.iv_delete_select, false);
}
helper.addOnLongClickListener(R.id.ll_item_rv_enthusiast);
helper.addOnClickListener(R.id.rl_delete_select);
}
}
}
package com.rv.rvmine.adapter;
import android.text.TextUtils;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
......@@ -9,16 +10,49 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import com.ruiwenliu.wrapper.util.BaseGlideHolder;
import com.ruiwenliu.wrapper.util.TransformationUtil;
import com.ruiwenliu.wrapper.util.glide.GlideOptions;
import com.rv.home.rv.module.ui.main.home.bean.HomeRecommendBean;
import com.rv.rvmine.R;
import com.rv.rvmine.bean.MyReleaseBean;
import java.util.ArrayList;
import java.util.List;
public class MyReleasePatAdapter extends BaseQuickAdapter<MyReleaseBean.DataBeanX.DataBean, BaseGlideHolder> {
private boolean isShowDelete = false; // 默认不显示选择框
private List<MyReleaseBean.DataBeanX.DataBean> lists = new ArrayList<>(); // 选中
public void changeBeanStatus(MyReleaseBean.DataBeanX.DataBean bean) {
if (lists.contains(bean)) {
lists.remove(bean);
} else {
lists.add(bean);
}
}
public void removeSelect(MyReleaseBean.DataBeanX.DataBean bean) {
if (lists.contains(bean)) lists.remove(bean);
}
public List<MyReleaseBean.DataBeanX.DataBean> getSelectLists() {
return lists;
}
public void clear() {
lists.clear();
}
public MyReleasePatAdapter() {
super(R.layout.rv_item_rv_release_pat);
}
public void changeViewShowState(boolean b) {
this.isShowDelete = b;
// notify();
notifyDataSetChanged();
}
@Override
protected void convert(BaseGlideHolder helper, MyReleaseBean.DataBeanX.DataBean item) {
MyReleaseBean.DataBeanX.DataBean.Body body = item.getBody();
......@@ -28,15 +62,20 @@ public class MyReleasePatAdapter extends BaseQuickAdapter<MyReleaseBean.DataBean
// GlideManager.getInstance(mContext).loadRoundImage2(body.getImages().get(0).getOurl(), (ImageView) helper.getView(R.id.iv_icon_pat),8);
ImageView image = helper.getView(R.id.iv_icon_pat);
GlideOptions options = GlideOptions.placeholderOf(com.ruiwenliu.wrapper.R.drawable.glide_icon_placeholder).
error(com.ruiwenliu.wrapper.R.drawable.glide_icon_error);
TransformationUtil utils = new TransformationUtil(image);
Glide.with(mContext)
.asBitmap()
.load(body.getImages().get(0).getOurl())
.apply(options)
.apply(RequestOptions.bitmapTransform(new RoundedCorners(12)).override(image.getWidth(), image.getHeight()))
.into(utils);
if (!TextUtils.isEmpty(item.getBody().getImages().get(0).getOurl()) && !item.getBody().getImages().get(0).getOurl().equals(image.getTag())) {
image.setTag(null);//需要清
GlideOptions options = GlideOptions.placeholderOf(com.ruiwenliu.wrapper.R.drawable.glide_icon_placeholder).
error(com.ruiwenliu.wrapper.R.drawable.glide_icon_error);
TransformationUtil utils = new TransformationUtil(image);
Glide.with(mContext)
.asBitmap()
.load(body.getImages().get(0).getOurl())
.apply(options)
.apply(RequestOptions.bitmapTransform(new RoundedCorners(12)).override(image.getWidth(), image.getHeight()))
.into(utils);
image.setTag(item.getBody().getImages().get(0).getOurl());
}
}
helper.setText(R.id.tv_title, body.getText());
......@@ -47,7 +86,21 @@ public class MyReleasePatAdapter extends BaseQuickAdapter<MyReleaseBean.DataBean
helper.setGone(R.id.iv_isvideo, false);
}
if (isShowDelete) {
helper.setVisible(R.id.rl_delete_select, true);
} else {
helper.setVisible(R.id.rl_delete_select, false);
}
if (lists.contains(item)) {
helper.setVisible(R.id.iv_delete_select, true);
} else {
helper.setVisible(R.id.iv_delete_select, false);
}
helper.addOnLongClickListener(R.id.ll_item_rv_enthusiast);
// helper.addOnClickListener(R.id.rl_delete_select);
}
}
}
package com.rv.rvmine.adapter;
import android.text.TextUtils;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
......@@ -9,19 +10,50 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import com.ruiwenliu.wrapper.util.BaseGlideHolder;
import com.ruiwenliu.wrapper.util.TransformationUtil;
import com.ruiwenliu.wrapper.util.glide.GlideOptions;
import com.rv.home.rv.module.ui.main.home.bean.HomeRecommendBean;
import com.rv.rvmine.R;
import com.rv.rvmine.bean.MyReleaseBean;
import java.util.ArrayList;
import java.util.List;
/**
* 短视频
*/
public class MyReleaseVideoAdapter extends BaseQuickAdapter<MyReleaseBean.DataBeanX.DataBean, BaseGlideHolder> {
private boolean isShowDelete = false; // 默认不显示选择框
private List<MyReleaseBean.DataBeanX.DataBean> lists = new ArrayList<>(); // 选中
public MyReleaseVideoAdapter() {
super(R.layout.rv_item_rv_release_video);
}
public void changeBeanStatus(MyReleaseBean.DataBeanX.DataBean bean) {
if (lists.contains(bean)) {
lists.remove(bean);
} else {
lists.add(bean);
}
}
public void removeSelect(MyReleaseBean.DataBeanX.DataBean bean) {
if (lists.contains(bean)) lists.remove(bean);
}
public List<MyReleaseBean.DataBeanX.DataBean> getSelectLists() {
return lists;
}
public void clear() {
lists.clear();
}
public void changeViewShowState(boolean b) {
this.isShowDelete = b;
notifyDataSetChanged();
}
@Override
protected void convert(BaseGlideHolder helper, MyReleaseBean.DataBeanX.DataBean item) {
MyReleaseBean.DataBeanX.DataBean.Body body = item.getBody();
......@@ -29,17 +61,20 @@ public class MyReleaseVideoAdapter extends BaseQuickAdapter<MyReleaseBean.DataBe
if (body.getVideos() != null && body.getVideos().size() > 0) {
// GlideManager.getInstance(mContext).loadRoundImage2(body.getImages().get(0).getOurl(), (ImageView) helper.getView(R.id.iv_icon_pat),8);
ImageView image = helper.getView(R.id.iv_icon_pat);
GlideOptions options = GlideOptions.placeholderOf(com.ruiwenliu.wrapper.R.drawable.glide_icon_placeholder).
error(com.ruiwenliu.wrapper.R.drawable.glide_icon_error);
TransformationUtil utils = new TransformationUtil(image);
Glide.with(mContext)
.asBitmap()
.load(body.getVideos().get(0).getOurl())
.apply(options)
.apply(RequestOptions.bitmapTransform(new RoundedCorners(12)).override(image.getWidth(), image.getHeight()))
.into(utils);
if (!TextUtils.isEmpty(body.getVideos().get(0).getOurl()) && !body.getVideos().get(0).getOurl().equals(image.getTag())) {
image.setTag(null);//需要清
GlideOptions options = GlideOptions.placeholderOf(com.ruiwenliu.wrapper.R.drawable.glide_icon_placeholder).
error(com.ruiwenliu.wrapper.R.drawable.glide_icon_error);
TransformationUtil utils = new TransformationUtil(image);
Glide.with(mContext)
.asBitmap()
.load(body.getVideos().get(0).getOurl())
.apply(options)
.apply(RequestOptions.bitmapTransform(new RoundedCorners(12)).override(image.getWidth(), image.getHeight()))
.into(utils);
image.setTag(body.getVideos().get(0).getOurl());
}
}
helper.setText(R.id.tv_title, body.getText());
......@@ -50,6 +85,18 @@ public class MyReleaseVideoAdapter extends BaseQuickAdapter<MyReleaseBean.DataBe
helper.setGone(R.id.iv_isvideo, false);
}
if (isShowDelete) {
helper.setVisible(R.id.rl_delete_select, true);
} else {
helper.setVisible(R.id.rl_delete_select, false);
}
if (lists.contains(item)) {
helper.setVisible(R.id.iv_delete_select, true);
} else {
helper.setVisible(R.id.iv_delete_select, false);
}
helper.addOnLongClickListener(R.id.ll_item_rv_enthusiast);
}
}
......
package com.rv.rvmine.bean;
import com.ruiwenliu.wrapper.base.BaseBean;
import java.util.List;
public class MyReleaseAskBean extends BaseBean {
private boolean rel;
private DataBeanX data;
public boolean isRel() {
return rel;
}
public void setRel(boolean rel) {
this.rel = rel;
}
public DataBeanX getData() {
return data;
}
public void setData(DataBeanX data) {
this.data = data;
}
public class DataBeanX {
private int totalCount;
private int totalPage;
private int pageNum;
private int pageSize;
private List<DataBean> data;
public int getTotalCount() {
return totalCount;
}
public void setTotalCount(int totalCount) {
this.totalCount = totalCount;
}
public int getTotalPage() {
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public int getPageNum() {
return pageNum;
}
public void setPageNum(int pageNum) {
this.pageNum = pageNum;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public List<DataBean> getData() {
return data;
}
public void setData(List<DataBean> data) {
this.data = data;
}
}
public class DataBean {
private int id;
private String title;
private double latitude;
private double longitude;
private String model;
private long time;
private long userId;
private int visible;
private boolean isDel;
private long crtTime;
private long updTime;
private String content;
private long commentCount;
private long praiseCount;
private String nickname;
private String picUrl;
private List<Comment> imComment;
private List<Praise> imPraise;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public double getLatitude() {
return latitude;
}
public void setLatitude(double latitude) {
this.latitude = latitude;
}
public double getLongitude() {
return longitude;
}
public void setLongitude(double longitude) {
this.longitude = longitude;
}
public String getModel() {
return model;
}
public void setModel(String model) {
this.model = model;
}
public long getTime() {
return time;
}
public void setTime(long time) {
this.time = time;
}
public long getUserId() {
return userId;
}
public void setUserId(long userId) {
this.userId = userId;
}
public int getVisible() {
return visible;
}
public void setVisible(int visible) {
this.visible = visible;
}
public boolean isDel() {
return isDel;
}
public void setDel(boolean del) {
isDel = del;
}
public long getCrtTime() {
return crtTime;
}
public void setCrtTime(long crtTime) {
this.crtTime = crtTime;
}
public long getUpdTime() {
return updTime;
}
public void setUpdTime(long updTime) {
this.updTime = updTime;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public long getCommentCount() {
return commentCount;
}
public void setCommentCount(long commentCount) {
this.commentCount = commentCount;
}
public long getPraiseCount() {
return praiseCount;
}
public void setPraiseCount(long praiseCount) {
this.praiseCount = praiseCount;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getPicUrl() {
return picUrl;
}
public void setPicUrl(String picUrl) {
this.picUrl = picUrl;
}
public List<Comment> getImComment() {
return imComment;
}
public void setImComment(List<Comment> imComment) {
this.imComment = imComment;
}
public List<Praise> getImPraise() {
return imPraise;
}
public void setImPraise(List<Praise> imPraise) {
this.imPraise = imPraise;
}
}
public class Comment {
private int id;
private int questionId;
private String content;
private long time;
private long userId;
private int visible;
private int visibleOwn;
private int state;
private boolean isDel;
private String nickname;
private String picUrl;
private long crtTime;
private long updTime;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getQuestionId() {
return questionId;
}
public void setQuestionId(int questionId) {
this.questionId = questionId;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public long getTime() {
return time;
}
public void setTime(long time) {
this.time = time;
}
public long getUserId() {
return userId;
}
public void setUserId(long userId) {
this.userId = userId;
}
public int getVisible() {
return visible;
}
public void setVisible(int visible) {
this.visible = visible;
}
public int getVisibleOwn() {
return visibleOwn;
}
public void setVisibleOwn(int visibleOwn) {
this.visibleOwn = visibleOwn;
}
public int getState() {
return state;
}
public void setState(int state) {
this.state = state;
}
public boolean isDel() {
return isDel;
}
public void setDel(boolean del) {
isDel = del;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getPicUrl() {
return picUrl;
}
public void setPicUrl(String picUrl) {
this.picUrl = picUrl;
}
public long getCrtTime() {
return crtTime;
}
public void setCrtTime(long crtTime) {
this.crtTime = crtTime;
}
public long getUpdTime() {
return updTime;
}
public void setUpdTime(long updTime) {
this.updTime = updTime;
}
}
public class Praise {
private int id;
private int questionId;
private long userId;
private long time;
private int visible;
private boolean isDel;
private String nickname;
private String picUrl;
private long crtTime;
private long updTime;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getQuestionId() {
return questionId;
}
public void setQuestionId(int questionId) {
this.questionId = questionId;
}
public long getUserId() {
return userId;
}
public void setUserId(long userId) {
this.userId = userId;
}
public long getTime() {
return time;
}
public void setTime(long time) {
this.time = time;
}
public int getVisible() {
return visible;
}
public void setVisible(int visible) {
this.visible = visible;
}
public boolean isDel() {
return isDel;
}
public void setDel(boolean del) {
isDel = del;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getPicUrl() {
return picUrl;
}
public void setPicUrl(String picUrl) {
this.picUrl = picUrl;
}
public long getCrtTime() {
return crtTime;
}
public void setCrtTime(long crtTime) {
this.crtTime = crtTime;
}
public long getUpdTime() {
return updTime;
}
public void setUpdTime(long updTime) {
this.updTime = updTime;
}
}
}
......@@ -5,6 +5,7 @@ import android.os.Bundle;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.StaggeredGridLayoutManager;
import android.view.View;
import android.widget.LinearLayout;
import com.alibaba.android.arouter.launcher.ARouter;
import com.chad.library.adapter.base.BaseQuickAdapter;
......@@ -16,11 +17,10 @@ import com.ruiwenliu.wrapper.base.presenter.CommonPresenter;
import com.ruiwenliu.wrapper.weight.refresh.SimpleRefreshLayout;
import com.ruiwenliu.wrapper.weight.refresh.SimpleRefreshView;
import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.ui.main.home.bean.HomeRecommendBean;
import com.rv.rvmine.R;
import com.rv.rvmine.R2;
import com.rv.rvmine.adapter.MyReleasePatAdapter;
import com.rv.rvmine.bean.MyReleaseBean;
import com.rv.rvmine.adapter.MyReleaseAskAdapter;
import com.rv.rvmine.bean.MyReleaseAskBean;
import com.yuyife.okgo.OkGoUtil;
import java.util.LinkedHashMap;
......@@ -37,10 +37,12 @@ public class MyReleaseAskFragment extends BaseFragment<CommonPresenter> implemen
RecyclerView rvContent;
@BindView(R2.id.refresh)
SimpleRefreshLayout mSimpleRefreshLayout;
@BindView(R2.id.ll_delete)
LinearLayout llDelete;
private int countPage;
private int mPage;
private MyReleasePatAdapter mAdapter;
private MyReleaseAskAdapter mAdapter;
public static MyReleaseAskFragment getInstance(int type) {
Bundle bundl = new Bundle();
......@@ -50,6 +52,24 @@ public class MyReleaseAskFragment extends BaseFragment<CommonPresenter> implemen
return fragment;
}
public void changeShowNormal() {
if (this.isShowDelete) {
changeShowDelete();
}
}
@Override
public void changeShowDelete() {
super.changeShowDelete();
if (this.isShowDelete) {
llDelete.setVisibility(View.VISIBLE);
} else {
llDelete.setVisibility(View.GONE);
mAdapter.clear();
}
mAdapter.changeViewShowState(this.isShowDelete);
}
@Override
public int getViewLayout() {
return R.layout.fragment_my_release_pat;
......@@ -60,7 +80,7 @@ public class MyReleaseAskFragment extends BaseFragment<CommonPresenter> implemen
mSimpleRefreshLayout.setHeaderView(new SimpleRefreshView(_mActivity));
mSimpleRefreshLayout.setOnSimpleRefreshListener(this);
mAdapter = new MyReleasePatAdapter();
mAdapter = new MyReleaseAskAdapter();
final StaggeredGridLayoutManager staggeredGridLayoutManager = new StaggeredGridLayoutManager(2, StaggeredGridLayoutManager.VERTICAL);
rvContent.setItemAnimator(null);
......@@ -86,17 +106,17 @@ public class MyReleaseAskFragment extends BaseFragment<CommonPresenter> implemen
mAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
MyReleaseBean.DataBeanX.DataBean item = (MyReleaseBean.DataBeanX.DataBean) adapter.getItem(position);
if (item != null) {
ARouter.getInstance()
.build(Constance.ACTIVITY_URL_DETAILPAT)
.withString("id", item.getMsgId())
.withString("title", item.getBody().getText())
.withString("iconUrl", item.getBody().getImages().get(0).getOurl())
.withString("userName", item.getNickname())
.withString("userUrl", item.getPicUrl())
.navigation();
}
// MyReleaseAskBean.DataBean item = (MyReleaseAskBean.DataBean) adapter.getItem(position);
// if (item != null) {
// ARouter.getInstance()
// .build(Constance.ACTIVITY_URL_DETAILPAT)
// .withString("id", item.getMsgId())
// .withString("title", item.getBody().getText())
// .withString("iconUrl", item.getBody().getImages().get(0).getOurl())
// .withString("userName", item.getNickname())
// .withString("userUrl", item.getPicUrl())
// .navigation();
// }
}
});
......@@ -132,13 +152,13 @@ public class MyReleaseAskFragment extends BaseFragment<CommonPresenter> implemen
mSimpleRefreshLayout.onRefreshComplete();
switch (requestType) {
case 0:
processData((MyReleaseBean) result);
processData((MyReleaseAskBean) result);
break;
}
}
private void processData(MyReleaseBean bean) {
private void processData(MyReleaseAskBean bean) {
if (mPage == 1) {
countPage = bean.getData().getPageSize();
mAdapter.setNewData(bean.getData().getData());
......@@ -178,7 +198,7 @@ public class MyReleaseAskFragment extends BaseFragment<CommonPresenter> implemen
Map<String, Object> map = new LinkedHashMap<>();
map.put("page", page);
map.put("type", "5");
mPresenter.getData(RvFrameConfig.HOST, 0, ApiConfig.RVENTHUSIAST_GETBYUSERID_LIST, MyReleaseBean.class, map, headMap, page == 1 ? true : false);
mPresenter.getData(RvFrameConfig.HOST, 0, ApiConfig.RVENTHUSIAST_GETBYUSERID_LIST, MyReleaseAskBean.class, map, headMap, page == 1 ? true : false);
}
public class AbSpacesItemDecoration extends RecyclerView.ItemDecoration {
......
package com.rv.rvmine.fragment;
import android.content.Intent;
import android.graphics.Rect;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.StaggeredGridLayoutManager;
import android.view.View;
import android.widget.LinearLayout;
import com.alibaba.android.arouter.launcher.ARouter;
import com.baidu.mapapi.model.LatLng;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.frame.base.url.Constance;
import com.frame.rv.config.RvFrameConfig;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseFragment;
import com.ruiwenliu.wrapper.base.presenter.CommonPresenter;
import com.ruiwenliu.wrapper.util.MapUtil;
import com.ruiwenliu.wrapper.util.ViewHolder;
import com.ruiwenliu.wrapper.weight.ToastView;
import com.ruiwenliu.wrapper.weight.refresh.SimpleRefreshLayout;
import com.ruiwenliu.wrapper.weight.refresh.SimpleRefreshView;
import com.rv.component.dialog.BottomDeleteDialog;
import com.rv.component.dialog.BottomPromptDialog;
import com.rv.component.utils.LocationRecord;
import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.ui.main.home.bean.HomeRecommendBean;
import com.rv.rvmine.R;
import com.rv.rvmine.R2;
import com.rv.rvmine.adapter.MyReleasePatAdapter;
import com.rv.rvmine.bean.MyReleaseBean;
import com.rv.rvmine.bean.MyReleaseIMTokenBean;
import com.rv.rvmine.traveler.MyReleaseActivity;
import com.xxrv.coupon.fragment.ExpiredCouponFragment;
import com.yuyife.okgo.OkGoUtil;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import butterknife.BindView;
......@@ -48,11 +40,13 @@ public class MyReleasePatFragment extends BaseFragment<CommonPresenter> implemen
RecyclerView rvContent;
@BindView(R2.id.refresh)
SimpleRefreshLayout mSimpleRefreshLayout;
@BindView(R2.id.ll_delete)
LinearLayout llDelete;
private int countPage;
private int mPage;
private String deleteMsgId;
private int deletePosition;
private MyReleasePatAdapter mAdapter;
private List<MyReleaseBean.DataBeanX.DataBean> delteMsgs;
public static MyReleasePatFragment getInstance(int type) {
Bundle bundl = new Bundle();
......@@ -67,6 +61,24 @@ public class MyReleasePatFragment extends BaseFragment<CommonPresenter> implemen
return R.layout.fragment_my_release_pat;
}
public void changeShowNormal() {
if (this.isShowDelete) {
changeShowDelete();
}
}
@Override
public void changeShowDelete() {
super.changeShowDelete();
if (this.isShowDelete) {
llDelete.setVisibility(View.VISIBLE);
} else {
llDelete.setVisibility(View.GONE);
mAdapter.clear();
}
mAdapter.changeViewShowState(this.isShowDelete);
}
@Override
protected void initView(Bundle savedInstanceState) {
mSimpleRefreshLayout.setHeaderView(new SimpleRefreshView(_mActivity));
......@@ -88,6 +100,18 @@ public class MyReleasePatFragment extends BaseFragment<CommonPresenter> implemen
}
});
llDelete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (mAdapter.getSelectLists().size() == 0) {
ToastView.getInstance(getContext()).showToastContent("暂无选中的拍拍");
return;
}
delteMsgs = mAdapter.getSelectLists();
deleteData();
}
});
rvContent.setLayoutManager(staggeredGridLayoutManager);
rvContent.addItemDecoration(new AbSpacesItemDecoration(20, 10));// 分割线。
rvContent.setAdapter(mAdapter);
......@@ -98,32 +122,25 @@ public class MyReleasePatFragment extends BaseFragment<CommonPresenter> implemen
mAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
MyReleaseBean.DataBeanX.DataBean item = (MyReleaseBean.DataBeanX.DataBean) adapter.getItem(position);
if (item != null) {
ARouter.getInstance()
.build(Constance.ACTIVITY_URL_DETAILPAT)
.withString("id", item.getMsgId())
.withString("title", item.getBody().getText())
.withString("iconUrl", item.getBody().getImages().get(0).getOurl())
.withString("userName", item.getNickname())
.withString("userUrl", item.getPicUrl())
.navigation();
}
}
});
mAdapter.setOnItemChildLongClickListener(new BaseQuickAdapter.OnItemChildLongClickListener() {
@Override
public boolean onItemChildLongClick(BaseQuickAdapter adapter, View view, int position) {
int id = view.getId();
deletePosition = position;
MyReleaseBean.DataBeanX.DataBean dataBean = (MyReleaseBean.DataBeanX.DataBean) adapter.getItem(position);
deleteMsgId = dataBean.getMsgId();
if (id == R.id.ll_item_rv_enthusiast) {
showDeleteDialgo();
if (view.getId() == R.id.ll_item_rv_enthusiast || view.getId() == R.id.rl_delete_select) {
MyReleaseBean.DataBeanX.DataBean item = (MyReleaseBean.DataBeanX.DataBean) adapter.getItem(position);
if (item != null) {
if (isShowDelete) {
mAdapter.changeBeanStatus(item);
mAdapter.notifyItemChanged(position);
} else {
ARouter.getInstance()
.build(Constance.ACTIVITY_URL_DETAILPAT)
.withString("id", item.getMsgId())
.withString("title", item.getBody().getText())
.withString("iconUrl", item.getBody().getImages().get(0).getOurl())
.withString("userName", item.getNickname())
.withString("userUrl", item.getPicUrl())
.navigation();
}
}
}
return false;
}
});
......@@ -160,12 +177,17 @@ public class MyReleasePatFragment extends BaseFragment<CommonPresenter> implemen
case 0:
processData((MyReleaseBean) result);
break;
case 1:
deleteData((MyReleaseIMTokenBean) result);
break;
case 2:
mAdapter.remove(deletePosition);
mAdapter.notifyItemChanged(deletePosition);
Iterator<MyReleaseBean.DataBeanX.DataBean> iterator = delteMsgs.iterator();
while (iterator.hasNext()) {
MyReleaseBean.DataBeanX.DataBean bean = iterator.next();
if (mAdapter.getData().contains(bean)) {
int indexOf = mAdapter.getData().lastIndexOf(bean);
mAdapter.removeSelect(bean);
mAdapter.remove(indexOf);
mAdapter.notifyItemChanged(indexOf);
}
}
break;
}
}
......@@ -213,38 +235,19 @@ public class MyReleasePatFragment extends BaseFragment<CommonPresenter> implemen
mPresenter.getData(RvFrameConfig.HOST, 0, ApiConfig.RVENTHUSIAST_GETBYUSERID_LIST, MyReleaseBean.class, map, headMap, page == 1 ? true : false);
}
public void showDeleteDialgo() {
new BottomDeleteDialog(_mActivity) {
@Override
public void helper(ViewHolder helper) {
super.helper(helper);
helper.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int i = v.getId();
if (i == R.id.ll_item_delete) {
getImToken();
dismiss();
}
}
}, R.id.ll_item_delete);
}
}.show();
}
private void getImToken() {
private void deleteData() {
if (OkGoUtil.getToken() != null) {
Map<String, Object> headMap = new LinkedHashMap<>();
headMap.put("Authorization", OkGoUtil.getToken());
mPresenter.postData(RvFrameConfig.HOST, 1, ApiConfig.DISCOVERY_IM_LOGIN, MyReleaseIMTokenBean.class, headMap, headMap, true);
}
}
Map<String, Object> header = new LinkedHashMap<>();
header.put("Authorization", OkGoUtil.getToken());
private void deleteData(MyReleaseIMTokenBean imTokenBean) {
Map<String, Object> map = new LinkedHashMap<>();
map.put("messageId", deleteMsgId);
map.put("access_token", imTokenBean.getData());
mPresenter.getData(RvFrameConfig.HOST, 2, ApiConfig.RVENTHUSIAST_MSG_DELETE, BaseBean.class, map, true);
Map<String, Object> map = new LinkedHashMap<>();
StringBuilder builder = new StringBuilder();
for (MyReleaseBean.DataBeanX.DataBean bean : delteMsgs) {
builder.append(bean.getMsgId()).append(",");
}
map.put("ids", builder.toString().substring(0, builder.lastIndexOf(",")));
mPresenter.getData(RvFrameConfig.HOST, 2, ApiConfig.RVENTHUSIAST_MSG_DELETES, BaseBean.class, map, header, true);
}
}
public class AbSpacesItemDecoration extends RecyclerView.ItemDecoration {
......
......@@ -5,29 +5,26 @@ import android.os.Bundle;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.StaggeredGridLayoutManager;
import android.view.View;
import android.widget.LinearLayout;
import com.alibaba.android.arouter.launcher.ARouter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.frame.base.url.Constance;
import com.frame.rv.config.RvFrameConfig;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseFragment;
import com.ruiwenliu.wrapper.base.presenter.CommonPresenter;
import com.ruiwenliu.wrapper.util.ViewHolder;
import com.ruiwenliu.wrapper.weight.ToastView;
import com.ruiwenliu.wrapper.weight.refresh.SimpleRefreshLayout;
import com.ruiwenliu.wrapper.weight.refresh.SimpleRefreshView;
import com.rv.component.dialog.BottomDeleteDialog;
import com.rv.home.rv.module.ApiConfig;
import com.rv.home.rv.module.ui.main.home.bean.HomeRecommendBean;
import com.rv.rvmine.R;
import com.rv.rvmine.R2;
import com.rv.rvmine.adapter.MyReleasePatAdapter;
import com.rv.rvmine.adapter.MyReleaseVideoAdapter;
import com.rv.rvmine.bean.MyReleaseBean;
import com.rv.rvmine.bean.MyReleaseIMTokenBean;
import com.yuyife.okgo.OkGoUtil;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import butterknife.BindView;
......@@ -41,12 +38,13 @@ public class MyReleaseVideoFragment extends BaseFragment<CommonPresenter> implem
RecyclerView rvContent;
@BindView(R2.id.refresh)
SimpleRefreshLayout mSimpleRefreshLayout;
@BindView(R2.id.ll_delete)
LinearLayout llDelete;
private int countPage;
private int mPage;
private String deleteMsgId;
private int deletePosition;
private MyReleaseVideoAdapter mAdapter;
private List<MyReleaseBean.DataBeanX.DataBean> delteMsgs;
public static MyReleaseVideoFragment getInstance(int type) {
Bundle bundl = new Bundle();
......@@ -61,6 +59,24 @@ public class MyReleaseVideoFragment extends BaseFragment<CommonPresenter> implem
return R.layout.fragment_my_release_pat;
}
public void changeShowNormal() {
if (this.isShowDelete) {
changeShowDelete();
}
}
@Override
public void changeShowDelete() {
super.changeShowDelete();
if (this.isShowDelete) {
llDelete.setVisibility(View.VISIBLE);
} else {
llDelete.setVisibility(View.GONE);
mAdapter.clear();
}
mAdapter.changeViewShowState(this.isShowDelete);
}
@Override
protected void initView(Bundle savedInstanceState) {
mSimpleRefreshLayout.setHeaderView(new SimpleRefreshView(_mActivity));
......@@ -82,6 +98,18 @@ public class MyReleaseVideoFragment extends BaseFragment<CommonPresenter> implem
}
});
llDelete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (mAdapter.getSelectLists().size() == 0) {
ToastView.getInstance(getContext()).showToastContent("暂无选中的视频");
return;
}
delteMsgs = mAdapter.getSelectLists();
deleteData();
}
});
rvContent.setLayoutManager(staggeredGridLayoutManager);
rvContent.addItemDecoration(new AbSpacesItemDecoration(20, 10));// 分割线。
rvContent.setAdapter(mAdapter);
......@@ -94,6 +122,11 @@ public class MyReleaseVideoFragment extends BaseFragment<CommonPresenter> implem
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
MyReleaseBean.DataBeanX.DataBean item = (MyReleaseBean.DataBeanX.DataBean) adapter.getItem(position);
if (item != null) {
if (isShowDelete) {
mAdapter.changeBeanStatus(item);
mAdapter.notifyItemChanged(position);
} else {
// ARouter.getInstance()
// .build(Constance.ACTIVITY_URL_DETAILPAT)
// .withString("id", item.getMsgId())
......@@ -102,26 +135,11 @@ public class MyReleaseVideoFragment extends BaseFragment<CommonPresenter> implem
// .withString("userName", item.getNickname())
// .withString("userUrl", item.getPicUrl())
// .navigation();
}
}
}
});
mAdapter.setOnItemChildLongClickListener(new BaseQuickAdapter.OnItemChildLongClickListener() {
@Override
public boolean onItemChildLongClick(BaseQuickAdapter adapter, View view, int position) {
deletePosition = position;
MyReleaseBean.DataBeanX.DataBean dataBean = (MyReleaseBean.DataBeanX.DataBean) adapter.getItem(position);
deleteMsgId = dataBean.getMsgId();
int id = view.getId();
if (id == R.id.ll_item_rv_enthusiast) {
showDeleteDialgo();
}
return false;
}
});
mAdapter.setOnLoadMoreListener(new BaseQuickAdapter.RequestLoadMoreListener() {
@Override
public void onLoadMoreRequested() {
......@@ -155,49 +173,34 @@ public class MyReleaseVideoFragment extends BaseFragment<CommonPresenter> implem
case 0:
processData((MyReleaseBean) result);
break;
case 1:
deleteData((MyReleaseIMTokenBean) result);
break;
case 2:
mAdapter.remove(deletePosition);
mAdapter.notifyItemChanged(deletePosition);
Iterator<MyReleaseBean.DataBeanX.DataBean> iterator = delteMsgs.iterator();
while (iterator.hasNext()) {
MyReleaseBean.DataBeanX.DataBean bean = iterator.next();
if (mAdapter.getData().contains(bean)) {
int indexOf = mAdapter.getData().lastIndexOf(bean);
mAdapter.removeSelect(bean);
mAdapter.remove(indexOf);
mAdapter.notifyItemChanged(indexOf);
}
}
break;
}
}
public void showDeleteDialgo() {
new BottomDeleteDialog(_mActivity) {
@Override
public void helper(ViewHolder helper) {
super.helper(helper);
helper.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int i = v.getId();
if (i == R.id.ll_item_delete) {
getImToken();
dismiss();
}
}
}, R.id.ll_item_delete);
}
}.show();
}
private void getImToken() {
private void deleteData() {
if (OkGoUtil.getToken() != null) {
Map<String, Object> headMap = new LinkedHashMap<>();
headMap.put("Authorization", OkGoUtil.getToken());
mPresenter.postData(RvFrameConfig.HOST, 1, ApiConfig.DISCOVERY_IM_LOGIN, MyReleaseIMTokenBean.class, headMap, headMap, true);
}
}
Map<String, Object> header = new LinkedHashMap<>();
header.put("Authorization", OkGoUtil.getToken());
private void deleteData(MyReleaseIMTokenBean imTokenBean) {
Map<String, Object> map = new LinkedHashMap<>();
map.put("messageId", deleteMsgId);
map.put("access_token", imTokenBean.getData());
mPresenter.getData(RvFrameConfig.HOST, 2, ApiConfig.RVENTHUSIAST_MSG_DELETE, BaseBean.class, map, true);
Map<String, Object> map = new LinkedHashMap<>();
StringBuilder builder = new StringBuilder();
for (MyReleaseBean.DataBeanX.DataBean bean : delteMsgs) {
builder.append(bean.getMsgId()).append(",");
}
map.put("ids", builder.toString().substring(0, builder.lastIndexOf(",")));
mPresenter.getData(RvFrameConfig.HOST, 2, ApiConfig.RVENTHUSIAST_MSG_DELETES, BaseBean.class, map, header, true);
}
}
private void processData(MyReleaseBean bean) {
......
......@@ -8,13 +8,22 @@ import android.support.v4.view.ViewPager;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
import com.bumptech.glide.request.RequestOptions;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.ruiwenliu.wrapper.adapter.TabAdapter;
import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseFragment;
import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.base.BaseWrapperFragment;
import com.ruiwenliu.wrapper.base.presenter.CommonPresenter;
import com.ruiwenliu.wrapper.util.TransformationUtil;
import com.ruiwenliu.wrapper.util.glide.GlideOptions;
import com.ruiwenliu.wrapper.weight.TitleView;
import com.ruiwenliu.wrapper.weight.horizontal.GallerySnapHelper;
import com.ruiwenliu.wrapper.weight.horizontal.SpaceItemDecoration;
......@@ -44,11 +53,15 @@ public class MyReleaseActivity extends BaseStatusActivity<CommonPresenter> {
@BindView(R2.id.release_viewPager)
ViewPager mViewPager;
private CouponMenuAdapter menuAdapter;
private TabAdapter mAdapter;
public final static int TYPE_PAT = 0;
public final static int TYPE_VIDEO = 1;
public final static int TYPE_ASK = 2;
private MyReleasePatFragment myReleasePatFragment = null;
private MyReleaseVideoFragment myReleaseVideoFragment = null;
private MyReleaseAskFragment myReleaseAskFragment = null;
public static Intent getIntent(Context context) {
return new Intent(context, MyReleaseActivity.class);
......@@ -62,6 +75,15 @@ public class MyReleaseActivity extends BaseStatusActivity<CommonPresenter> {
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
titleView.setTitle("我的发布");
titleView.setImageResource(R.id.iv_title_right, R.drawable.myrelease_icon_setting);
titleView.setChildClickListener(R.id.iv_title_right, new View.OnClickListener() {
@Override
public void onClick(View v) {
BaseWrapperFragment fragment = mAdapter.getCurrentFragment();
fragment.changeShowDelete();
}
});
initRecyclerView();
initViewpager();
}
......@@ -96,6 +118,16 @@ public class MyReleaseActivity extends BaseStatusActivity<CommonPresenter> {
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
menuAdapter.setSelectItem(position);
mViewPager.setCurrentItem(position);
if (position == 0) {
myReleaseVideoFragment.changeShowNormal();
myReleaseAskFragment.changeShowNormal();
} else if (position == 1) {
myReleasePatFragment.changeShowNormal();
myReleaseAskFragment.changeShowNormal();
} else if (position == 2) {
myReleasePatFragment.changeShowNormal();
myReleaseVideoFragment.changeShowNormal();
}
}
});
}
......@@ -129,10 +161,13 @@ public class MyReleaseActivity extends BaseStatusActivity<CommonPresenter> {
private List<BaseFragment> getListFragment() {
myReleasePatFragment = MyReleasePatFragment.getInstance(TYPE_PAT);
myReleaseVideoFragment = MyReleaseVideoFragment.getInstance(TYPE_VIDEO);
myReleaseAskFragment = MyReleaseAskFragment.getInstance(TYPE_ASK);
List<BaseFragment> list = new ArrayList<>();
list.add(MyReleasePatFragment.getInstance(TYPE_PAT));
list.add(MyReleaseVideoFragment.getInstance(TYPE_VIDEO));
list.add(MyReleaseAskFragment.getInstance(TYPE_ASK));
list.add(myReleasePatFragment);
list.add(myReleaseVideoFragment);
list.add(myReleaseAskFragment);
return list;
}
......
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#ffffffff" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#fffdb51c" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/gray_f5f5f5"
android:orientation="vertical">
<com.ruiwenliu.wrapper.weight.refresh.SimpleRefreshLayout
xmlns:android="http://schemas.android.com/apk/res/android"
<com.ruiwenliu.wrapper.weight.refresh.SimpleRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/refresh"
android:layout_width="match_parent"
android:layout_height="match_parent">
......@@ -23,4 +22,28 @@
</com.ruiwenliu.wrapper.weight.refresh.SimpleRefreshLayout>
</LinearLayout>
\ No newline at end of file
<LinearLayout
android:id="@+id/ll_delete"
android:layout_width="match_parent"
android:layout_height="@dimen/size_40"
android:layout_gravity="bottom"
android:background="#F25B5B"
android:gravity="center"
android:orientation="horizontal"
android:visibility="gone">
<ImageView
android:layout_width="@dimen/size_20"
android:layout_height="@dimen/size_20"
android:src="@drawable/icon_myrelease_delete" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/size_5"
android:text="删除"
android:textColor="@color/white"
android:textSize="16sp" />
</LinearLayout>
</FrameLayout>
\ No newline at end of file
......@@ -11,7 +11,7 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
......@@ -25,9 +25,30 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:src="@drawable/icon_fragment_video_hint"/>
android:src="@drawable/icon_fragment_video_hint" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/rl_delete_select"
android:layout_width="@dimen/size_20"
android:layout_height="@dimen/size_20"
android:layout_gravity="left|top"
android:layout_marginLeft="@dimen/size_10"
android:layout_marginTop="@dimen/size_10"
android:background="@drawable/shape_rv_bg_delete_select"
android:visibility="gone">
<ImageView
android:id="@+id/iv_delete_select"
android:layout_width="@dimen/size_12"
android:layout_height="@dimen/size_12"
android:layout_centerInParent="true"
android:src="@drawable/shape_rv_icon_delete_select"
android:visibility="gone" />
</RelativeLayout>
</FrameLayout>
<TextView
......@@ -35,10 +56,10 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_5"
android:ellipsize="end"
android:maxLines="2"
android:paddingLeft="@dimen/size_5"
android:paddingRight="@dimen/size_5"
android:maxLines="2"
android:ellipsize="end"
android:text="行摄川西邂逅生命中未知的精彩"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_14" />
......
......@@ -11,7 +11,7 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
......@@ -24,10 +24,31 @@
android:id="@+id/iv_isvideo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:src="@drawable/icon_fragment_video_hint"/>
android:layout_gravity="center"
android:src="@drawable/icon_fragment_video_hint" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/rl_delete_select"
android:layout_width="@dimen/size_20"
android:layout_height="@dimen/size_20"
android:layout_gravity="left|top"
android:layout_marginLeft="@dimen/size_10"
android:layout_marginTop="@dimen/size_10"
android:background="@drawable/shape_rv_bg_delete_select"
android:visibility="gone">
<ImageView
android:id="@+id/iv_delete_select"
android:layout_width="@dimen/size_12"
android:layout_height="@dimen/size_12"
android:layout_centerInParent="true"
android:src="@drawable/shape_rv_icon_delete_select"
android:visibility="gone" />
</RelativeLayout>
</FrameLayout>
<TextView
......@@ -35,10 +56,10 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/size_5"
android:ellipsize="end"
android:maxLines="2"
android:paddingLeft="@dimen/size_5"
android:paddingRight="@dimen/size_5"
android:maxLines="2"
android:ellipsize="end"
android:text="行摄川西邂逅生命中未知的精彩"
android:textColor="@color/colorMain"
android:textSize="@dimen/text_14" />
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment