private RelativeLayout popupshou;
private ImageView pop_img;
private RecyclerView recyclerView;
private android.view.View popup;
RecyclerView recyclerone,onerecyclerone,tworecyclertwo;
private OnePresenter onePresenter;
private TwoPresenter twoPresenter;
private GoodsPresenter goodsPresenter;
private OneAdapter oneAdapter;
private TwoAdapter twoAdapter;
private GoodsAdapter goodsAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
popupshou= findViewById(R.id.popupshou);
pop_img = findViewById(R.id.pop_img);
//商品信息
recyclerView = findViewById(R.id.recycle_View);
popup = android.view.View.inflate(this, R.layout.popupwind, null);
onerecyclerone=popup.findViewById(R.id.onerecyclerone);
tworecyclertwo=popup.findViewById(R.id.tworecyclertwo);
//请求一级条目
onePresenter = new OnePresenter(new getyi());
onePresenter.requestData();
//二级条目
twoPresenter = new TwoPresenter(new geter());
twoPresenter.requestData("1001002");
//商品信息
goodsPresenter = new GoodsPresenter(new getgoods());
//创建 适配器
//一级
oneAdapter = new OneAdapter(this);
onerecyclerone.setAdapter(oneAdapter);
onerecyclerone.setLayoutManager(
new LinearLayoutManager(this,LinearLayoutManager.HORIZONTAL,false));
//二级
twoAdapter = new TwoAdapter(this);
tworecyclertwo.setAdapter(twoAdapter);
tworecyclertwo.setLayoutManager(
new LinearLayoutManager(this,LinearLayoutManager.HORIZONTAL,false));
goodsAdapter = new GoodsAdapter(this);
recyclerView.setAdapter(goodsAdapter);
GridLayoutManager gridLayoutManager =new GridLayoutManager(this,2);
recyclerView.setLayoutManager(gridLayoutManager);
//点击一级调模
oneAdapter.setOneCallBack(new OneAdapter.onereCallBack() {
@Override
public void getdat(String id) {
twoPresenter.requestData(id);
}
});
//二级条目点击
twoAdapter.settworeCallBack(new TwoAdapter.TworeCallBack() {
@Override
public void getdat(String id) {
goodsPresenter.requestData(id);
}
});
//popupwind
pop_img.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final PopupWindow window = new PopupWindow(popup,
WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.WRAP_CONTENT);
// 设置popWindow弹出窗体可点击,这句话必须添加,并且是true
window.setFocusable(true);
// 设置点击popupwindow外屏幕其它地方消失
window.setOutsideTouchable(true);
// 实例化一个ColorDrawable颜色为半透明
ColorDrawable dw = new ColorDrawable(0xb0000000);
//ColorDrawable dw = new ColorDrawable(Color.WHITE);
window.setBackgroundDrawable(dw);
// 在底部显示
window.showAsDropDown(popupshou, 0, 0, Gravity.START);
}
});
}
//一级条目
class getyi implements DataCall<List<OneBean>>{
@Override
public void onSuccess(List<OneBean> result, Object... args) {
oneAdapter.add(result);
oneAdapter.notifyDataSetChanged();
}
@Override
public void fail(List<OneBean> oneBeans, Object... args) {
}
}
class geter implements DataCall<List<TwoBean>>{
@Override
public void onSuccess(List<TwoBean> result, Object... args) {
twoAdapter.clear();
twoAdapter.add(result);
twoAdapter.notifyDataSetChanged();
}
@Override
public void fail(List<TwoBean> twoBeans, Object... args) {
}
}
class getgoods implements DataCall<List<GoodsBean>>{
@Override
public void onSuccess(List<GoodsBean> result, Object... args) {
goodsAdapter.clear();
goodsAdapter.add(result);
goodsAdapter.notifyDataSetChanged();
}
@Override
public void fail(List<GoodsBean> goodsBeans, Object... args) {
}
}
}
private RadioGroup radioGroup;
private FrameLayout frameLayout;
List<Fragment> list =new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_order);
radioGroup = findViewById(R.id.radio_group);
frameLayout = findViewById(R.id.frame_layoup);
getSupportFragmentManager().beginTransaction().replace(R.id.frame_layoup,new One_Fragment()).commit();
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId){
case R.id.btn_1:
getSupportFragmentManager().beginTransaction().replace(R.id.frame_layoup, new One_Fragment()).commit();
break;
case R.id.btn_2:
getSupportFragmentManager().beginTransaction().replace(R.id.frame_layoup, new Two_Fragment()).commit();
break;
}
}
});
}
}