提交 c427d592 authored 作者: lgd's avatar lgd

1.新增work页面

2.//TODO ,质检接口数据无对应问题,内部交易订单审核,审核规则,领用申请列表/退件列表/参数,坩埚下单,mes其他页面,mes质量反馈,编辑任务担当无法修改.
上级 933589cb
...@@ -1699,6 +1699,17 @@ ...@@ -1699,6 +1699,17 @@
android:screenOrientation="portrait" android:screenOrientation="portrait"
android:theme="@style/Work.Base" android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" /> android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.WorkOrderActivity"
android:configChanges="keyboardHidden|orientation"
android:label="订单"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
WorkOrderActivity
<provider <provider
android:name="androidx.core.content.FileProvider" android:name="androidx.core.content.FileProvider"
android:authorities="com.wd.workoffice.fileprovider" android:authorities="com.wd.workoffice.fileprovider"
......
...@@ -22,6 +22,7 @@ import com.wd.workoffice.ui.fg.MainFragment; ...@@ -22,6 +22,7 @@ import com.wd.workoffice.ui.fg.MainFragment;
import com.wd.workoffice.ui.fg.MesFragment; import com.wd.workoffice.ui.fg.MesFragment;
import com.wd.workoffice.ui.fg.MsgFragment; import com.wd.workoffice.ui.fg.MsgFragment;
import com.wd.workoffice.ui.fg.MyFragment; import com.wd.workoffice.ui.fg.MyFragment;
import com.wd.workoffice.ui.fg.WorkFragment;
import com.wd.workoffice.util.UserKeeper; import com.wd.workoffice.util.UserKeeper;
import com.wd.workoffice.util.WorkUtils; import com.wd.workoffice.util.WorkUtils;
...@@ -61,7 +62,6 @@ public class MainActivity extends WorkBaseActivity implements BottomNavigationBa ...@@ -61,7 +62,6 @@ public class MainActivity extends WorkBaseActivity implements BottomNavigationBa
startActivity(LoginActivity.class); startActivity(LoginActivity.class);
return; return;
} }
// WorkUtils.refreshToken();
ButterKnife.bind(this); ButterKnife.bind(this);
QMUIStatusBarHelper.translucent(this); QMUIStatusBarHelper.translucent(this);
QMUIStatusBarHelper.setStatusBarLightMode(this); QMUIStatusBarHelper.setStatusBarLightMode(this);
...@@ -73,10 +73,21 @@ public class MainActivity extends WorkBaseActivity implements BottomNavigationBa ...@@ -73,10 +73,21 @@ public class MainActivity extends WorkBaseActivity implements BottomNavigationBa
// .setBackgroundColorResource(R.color.red) // .setBackgroundColorResource(R.color.red)
// .setText("0"); // .setText("0");
bnbMainBottomBar bnbMainBottomBar
.addItem(new BottomNavigationItem(R.mipmap.main_bat, "首页").setActiveColorResource(R.color.main_icon_select).setInActiveColorResource(R.color.main_icon)) .addItem(new BottomNavigationItem(R.mipmap.main_bat_choose , "首页").
.addItem(new BottomNavigationItem(R.mipmap.main_mes, "MES").setActiveColorResource(R.color.main_icon_select).setInActiveColorResource(R.color.main_icon)) setActiveColorResource(R.color.main_icon_select).
.addItem(new BottomNavigationItem(R.mipmap.main_msg, "消息").setActiveColorResource(R.color.main_icon_select).setInActiveColorResource(R.color.main_icon)) setInActiveColorResource(R.color.main_icon).setInactiveIconResource(R.mipmap.main_bat))
.addItem(new BottomNavigationItem(R.mipmap.main_my, "我的").setActiveColorResource(R.color.main_icon_select).setInActiveColorResource(R.color.main_icon)) .addItem(new BottomNavigationItem(R.mipmap.main_work_choose, "工作台").
setActiveColorResource(R.color.main_icon_select).setInActiveColorResource(R.color.main_icon).
setInactiveIconResource(R.mipmap.main_work))
.addItem(new BottomNavigationItem(R.mipmap.main_mes_choose, "MES").
setActiveColorResource(R.color.main_icon_select).setInActiveColorResource(R.color.main_icon).
setInactiveIconResource(R.mipmap.main_mes))
.addItem(new BottomNavigationItem(R.mipmap.main_msg_choose, "消息").
setActiveColorResource(R.color.main_icon_select).setInActiveColorResource(R.color.main_icon).
setInactiveIconResource(R.mipmap.main_msg))
.addItem(new BottomNavigationItem(R.mipmap.main_my_choose, "我的")
.setActiveColorResource(R.color.main_icon_select).setInActiveColorResource(R.color.main_icon).
setInactiveIconResource(R.mipmap.main_my))
.initialise(); .initialise();
fm = getSupportFragmentManager(); fm = getSupportFragmentManager();
WorkUtils.refreshToken(); WorkUtils.refreshToken();
...@@ -113,6 +124,7 @@ public class MainActivity extends WorkBaseActivity implements BottomNavigationBa ...@@ -113,6 +124,7 @@ public class MainActivity extends WorkBaseActivity implements BottomNavigationBa
public ArrayList<Fragment> getFragments() { public ArrayList<Fragment> getFragments() {
ArrayList<Fragment> fragments = new ArrayList<>(); ArrayList<Fragment> fragments = new ArrayList<>();
fragments.add(new MainFragment()); fragments.add(new MainFragment());
fragments.add(new WorkFragment());
fragments.add(new MesFragment()); fragments.add(new MesFragment());
fragments.add(new MsgFragment()); fragments.add(new MsgFragment());
fragments.add(new MyFragment()); fragments.add(new MyFragment());
...@@ -170,7 +182,7 @@ public class MainActivity extends WorkBaseActivity implements BottomNavigationBa ...@@ -170,7 +182,7 @@ public class MainActivity extends WorkBaseActivity implements BottomNavigationBa
public void changeView(RefreshTokenEvent refreshTokenEvent) { public void changeView(RefreshTokenEvent refreshTokenEvent) {
fragments = getFragments(); fragments = getFragments();
bnbMainBottomBar.setTabSelectedListener(this); bnbMainBottomBar.setTabSelectedListener(this);
mainContent.setOffscreenPageLimit(3); mainContent.setOffscreenPageLimit(4);
VpMainAdapter vpFgAdapter = new VpMainAdapter(fm, fragments); VpMainAdapter vpFgAdapter = new VpMainAdapter(fm, fragments);
mainContent.setAdapter(vpFgAdapter); mainContent.setAdapter(vpFgAdapter);
} }
......
package com.wd.workoffice.ui.activity;
import android.view.View;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.bean.vo.BatLayoutVo;
import com.wd.workoffice.ui.activity.bat.order.product.ProductInsideOrderActivity;
import com.wd.workoffice.ui.activity.bat.order.product.ProductOutOrderActivity;
import com.wd.workoffice.ui.activity.bat.order.product.ProductSaleOrderActivity;
import com.wd.workoffice.ui.activity.bat.order.product.ProductSupplierOrderActivity;
import com.wd.workoffice.ui.activity.bat.order.sale.SaleCrucibleOrderActivity;
import com.wd.workoffice.ui.activity.bat.order.sale.SaleInsideOrderActivity;
import com.wd.workoffice.ui.activity.bat.order.sale.SaleOutOrderActivity;
import com.wd.workoffice.ui.activity.bat.order.sale.SaleProductOrderActivity;
import com.wd.workoffice.ui.activity.bat.order.sale.SaleSaleOrderActivity;
import com.wd.workoffice.ui.activity.bat.order.sale.SaleSupplierOrderActivity;
import com.wd.workoffice.ui.adapter.BatLayoutAdapter;
import java.util.ArrayList;
import java.util.List;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class WorkOrderActivity extends WorkToolBarActivity {
@BindView(R.id.rv_sale)
RecyclerView rvSale;
@BindView(R.id.rv_product)
RecyclerView rvProduct;
@BindView(R.id.srl_refresh)
SmartRefreshLayout srlRefresh;
List<BatLayoutVo> saleList = new ArrayList<>();
List<BatLayoutVo> productList = new ArrayList<>();
int[] saleImg = new int[]{R.mipmap.order_sale1, R.mipmap.order_sale2, R.mipmap.order_sale3, R.mipmap.order_sale4, R.mipmap.order_sale5, R.mipmap.order_sale6};
String[] saleName = new String[]{"销售订单", "外采购订单", "供应订单", "内部订单", "组装订单", "坩埚订单"};
int[] productImg = new int[]{R.mipmap.order_product1, R.mipmap.order_product2, R.mipmap.order_product3, R.mipmap.order_product4, R.mipmap.order_product5, R.mipmap.order_product6};
String[] productName = new String[]{"销售订单", "外采购订单", "供应订单", "内部订单", "组装订单", "坩埚订单"};
@Override
protected void initView() {
ButterKnife.bind(this);
addDate(saleList, saleImg, saleName);
addDate(productList, productImg, productName);
initRvLayout(rvSale, saleList);
initRvLayout(rvProduct, productList);
}
private void addDate(List<BatLayoutVo> saleList, int[] saleImg, String[] saleName) {
for (int i = 0; i < saleImg.length; i++) {
BatLayoutVo batLayoutVo = new BatLayoutVo();
batLayoutVo.setImg(saleImg[i]);
batLayoutVo.setName(saleName[i]);
saleList.add(batLayoutVo);
}
}
@Override
protected void initData() {
}
@Override
protected void initEvent() {
srlRefresh.setOnRefreshListener(refreshLayout -> {
srlRefresh.finishRefresh();
});
}
@Override
protected int layoutId() {
return R.layout.activity_work_order;
}
/**
* 初始化布局
*
* @param rvSale
* @param saleList
*/
private void initRvLayout(RecyclerView rvSale, List<BatLayoutVo> saleList) {
rvSale.setLayoutManager(new GridLayoutManager(this, 4, RecyclerView.VERTICAL,
false));
BatLayoutAdapter batLayoutAdapter = new BatLayoutAdapter(R.layout.item_bat_layout, saleList);
batLayoutAdapter.bindToRecyclerView(rvSale);
switch (rvSale.getId()) {
case R.id.rv_sale:
batLayoutAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
switch (position) {
case 0:
startActivity(SaleSaleOrderActivity.class, "identity", "1");
break;
case 1:
startActivity(SaleOutOrderActivity.class, "identity", "1");
break;
case 2:
startActivity(SaleSupplierOrderActivity.class, "identity", "1");
break;
case 3:
startActivity(SaleInsideOrderActivity.class, "identity", "1");
break;
case 4:
startActivity(SaleProductOrderActivity.class, "identity", "1");
break;
case 5:
startActivity(SaleCrucibleOrderActivity.class, "identity", "1");
break;
}
}
});
break;
case R.id.rv_product:
batLayoutAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
switch (position) {
case 0:
startActivity(ProductSaleOrderActivity.class);
break;
case 1:
startActivity(ProductOutOrderActivity.class);
break;
case 2:
startActivity(ProductSupplierOrderActivity.class);
break;
case 3:
startActivity(ProductInsideOrderActivity.class);
break;
case 4:
startActivity(SaleProductOrderActivity.class, "identity", "2");
break;
case 5:
startActivity(SaleCrucibleOrderActivity.class, "identity", "2");
break;
}
}
});
break;
}
}
}
package com.wd.workoffice.ui.fg;
import android.view.View;
import android.widget.LinearLayout;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.vo.BatLayoutVo;
import com.wd.workoffice.ui.activity.WorkOrderActivity;
import com.wd.workoffice.ui.activity.bat.approval.ApprovalFromMeActivity;
import com.wd.workoffice.ui.activity.bat.approval.ApprovalToMeActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkAccountActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkContactsActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkDepActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkFinancialActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkInStockActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkProActivity;
import com.wd.workoffice.ui.activity.bat.work.WorkWarehouseActivity;
import com.wd.workoffice.ui.adapter.BatLayoutAdapter;
import java.util.ArrayList;
import java.util.List;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class WorkFragment extends WorkBaseFg {
@BindView(R.id.rv_function)
RecyclerView rvFunction;
@BindView(R.id.srl_refresh)
SmartRefreshLayout srlRefresh;
List<BatLayoutVo> workList = new ArrayList<>();
int[] workImg = new int[]{R.mipmap.work_icon1, R.mipmap.work_icon2, R.mipmap.work_icon3,
R.mipmap.work_icon4, R.mipmap.work_icon5, R.mipmap.work_icon6, R.mipmap.work_icon7,
R.mipmap.work_icon8, R.mipmap.work_icon9, R.mipmap.work_icon10, R.mipmap.work_icon11};
String[] workName = new String[]{"产品", "往来", "部门账户", "仓库", "部门", "财务", "设备", "流程", "报表", "库存类别", "订单"};
@BindView(R.id.ll_submit)
LinearLayout llSubmit;
@BindView(R.id.ll_not_deal)
LinearLayout llNotDeal;
@BindView(R.id.ll_deal)
LinearLayout llDeal;
@Override
protected void initView() {
ButterKnife.bind(this, getContentView());
addDate(workList, workImg, workName);
initRvLayout(rvFunction, workList);
}
@Override
protected void initData() {
// RtfUtils.getRtf().userInfo().compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
// @Override
// public void doOnSubscribe(Disposable d) {
// }
//
// @Override
// public void onFail(String errorMsg) {
// }
//
// @Override
// public void onSuccess(BaseBean data) {
// if (data.getCode() != 0) {
// return;
// }
// UserKeeper.getInstance().keepUserInfo(data.getData().toString());
// }
// });
// Map<String, Object> param = WorkUtils.pageKey();
// RtfUtils.getRtf().notice(param).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
// @Override
// public void doOnSubscribe(Disposable d) {
// }
//
// @Override
// public void onFail(String errorMsg) {
// hideLoading();
// toast(errorMsg);
// }
//
// @Override
// public void onSuccess(BaseBean data) {
// hideLoading();
// if (data.getCode() != 0) {
// toast(data.getMessage());
// return;
// }
// List<MsgBean.RecordsBean> getList = JSON.parseObject(data.getData().toString(), MsgBean.class).getRecords();
// if (getList != null && getList.size() != 0) {
// MsgBean.RecordsBean recordsBean = getList.get(0);
// tvNotice.setText(recordsBean.getTitle());
// }
// }
// });
}
@Override
protected void initEvent() {
srlRefresh.setOnRefreshListener(refreshLayout -> {
srlRefresh.finishRefresh();
});
}
@Override
protected int layoutId() {
return R.layout.fg_work;
}
private void addDate(List<BatLayoutVo> saleList, int[] saleImg, String[] saleName) {
for (int i = 0; i < saleImg.length; i++) {
BatLayoutVo batLayoutVo = new BatLayoutVo();
batLayoutVo.setImg(saleImg[i]);
batLayoutVo.setName(saleName[i]);
saleList.add(batLayoutVo);
}
}
/**
* 初始化布局
*
* @param rvSale
* @param saleList
*/
private void initRvLayout(RecyclerView rvSale, List<BatLayoutVo> saleList) {
rvSale.setLayoutManager(new GridLayoutManager(getActivity(), 4, RecyclerView.VERTICAL,
false));
BatLayoutAdapter batLayoutAdapter = new BatLayoutAdapter(R.layout.item_bat_layout, saleList);
batLayoutAdapter.bindToRecyclerView(rvSale);
batLayoutAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
switch (position) {
case 0:
startActivity(WorkProActivity.class);
break;
case 1:
startActivity(WorkContactsActivity.class);
break;
case 2:
startActivity(WorkAccountActivity.class);
break;
case 3:
startActivity(WorkWarehouseActivity.class);
break;
case 4:
startActivity(WorkDepActivity.class);
break;
case 5:
startActivity(WorkFinancialActivity.class);
break;
case 6:
toast("暂无数据");
break;
case 7:
toast("暂无数据");
break;
case 8:
toast("暂无数据");
break;
case 9:
startActivity(WorkInStockActivity.class);
break;
case 10:
startActivity(WorkOrderActivity.class);
break;
}
}
});
}
@OnClick({R.id.ll_submit, R.id.ll_deal, R.id.ll_not_deal})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.ll_submit:
startActivity(ApprovalToMeActivity.class);
break;
case R.id.ll_deal:
startActivity(ApprovalFromMeActivity.class);
break;
case R.id.ll_not_deal:
startActivity(ApprovalFromMeActivity.class);
break;
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="45"
android:endColor="#fff5a623"
android:startColor="#fffbd249"
android:type="linear"
android:useLevel="true" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<com.scwang.smartrefresh.layout.SmartRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/srl_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white">
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<View style="@style/ViewX" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="20mm"
android:text="作为卖家"
android:textColor="@color/mainTextColor"
android:textSize="20sp"
android:textStyle="bold" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_sale"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm" />
<View style="@style/ViewX" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="20mm"
android:text="作为买家"
android:textColor="@color/mainTextColor"
android:textSize="20sp"
android:textStyle="bold" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_product"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<com.scwang.smartrefresh.layout.SmartRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/srl_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<View
android:layout_width="match_parent"
android:layout_height="150mm"
android:background="@drawable/shape_work_bg" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="50mm"
android:paddingHorizontal="20mm"
android:text="工作台"
android:textSize="20sp" />
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="20mm"
android:layout_marginTop="100mm"
android:background="@color/white"
app:cardCornerRadius="4dp"
app:cardElevation="4dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="15mm">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="审批"
android:textSize="16sp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm">
<LinearLayout
android:id="@+id/ll_submit"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="17"
android:textSize="20sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6mm"
android:text="已发起"
android:textColor="#ff798188"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_not_deal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="17"
android:textSize="20sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6mm"
android:text="待处理"
android:textColor="#ff798188"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_deal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="17"
android:textSize="20sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6mm"
android:text="已处理"
android:textColor="#ff798188"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
</FrameLayout>
<View
android:layout_width="match_parent"
android:layout_height="25mm"
android:background="@color/white" />
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm"
android:paddingVertical="30mm"
android:text="常用功能"
android:textSize="20sp"
android:textStyle="bold" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_function"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20mm" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</LinearLayout>
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论