MyDD.java 和 activity_my_dd.xml
采用RelativeLayout布局
其中
Constans.DD="https://www.zhaoapi.cn/product/getOrders"
<android.support.design.widget.TabLayout
android:layout_alignParentTop="true"
android:layout_marginTop="20dp"
android:id="@+id/mdd_tab"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</android.support.design.widget.TabLayout>
<android.support.v4.view.ViewPager
android:layout_above="@id/mydd_return"
android:id="@+id/vp"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/mdd_tab"/>
<Button
android:id="@+id/mydd_return"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="@color/red"
android:text="返回"
android:textColor="#FFFFFF" />
public class MyDD extends AppCompatActivity implements IMyDD,TabFrag.TabAgain,TabFrag.PageAdd {
private IParesenter iParesenter;
private int page = 1;
private Button mydd_return;
private String uid;
private String[] tabs = {"待支付","已支付","已取消"};
private TabLayout mdd_tab;
private FragmentManager manager;
private List<Fragment> fragments;
private ViewPager vp;
private TabFrag fragmentForVp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
//透明状态栏
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
}
getSupportActionBar().hide();
setContentView(R.layout.activity_my_dd);
manager = getSupportFragmentManager();
mydd_return = findViewById(R.id.mydd_return);
mdd_tab = findViewById(R.id.mdd_tab);
vp = findViewById(R.id.vp);
fragments = new ArrayList<Fragment>();
iParesenter = new IMyDDParesenter(this);
SharedPreferences log = getSharedPreferences("LOG", Activity.MODE_PRIVATE);
uid = log.getString("uid", "");
if (uid.equals("")){
Toast.makeText(this, "您还没有登录,先去登录吧", Toast.LENGTH_SHORT).show();
}else{
iParesenter.getJson(Constans.DD + "?uid=" + uid + "&page=" + page);
}
mydd_return.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MyDD.this,JD.class);
startActivity(intent);
finish();
}
});
}
@Override
public void getMyDDSuccess(MyddInfo myddInfo) {
fragments = null;
fragments = new ArrayList<Fragment>();
mdd_tab.removeAllTabs();
MyVpAdapter myVpAdapter = new MyVpAdapter(manager);
vp.setAdapter(myVpAdapter);
if (myddInfo.getData().size() == 0 && (page == 1)){
Toast.makeText(this, "您先还还没有订单,先去购物车创建订单吧", Toast.LENGTH_SHORT).show();
return;
}else if (myddInfo.getData().size() == 0 && (page != 1)){
Toast.makeText(this, "已经到最后一页了,没有更多订单了", Toast.LENGTH_SHORT).show();
page = 1;
iParesenter.destroy();
iParesenter = new IMyDDParesenter(this);
iParesenter.getJson(Constans.DD + "?uid=" + uid + "&page=" + page);
return;
}
//给tablayout设置tab页
for(int i = 0;i < tabs.length;i ++){
fragmentForVp = new TabFrag();
fragmentForVp.setMyddInfo(myddInfo);
Bundle b = new Bundle();
b.putString("data",tabs[i]);
fragmentForVp.setTabAgain(this);
fragmentForVp.setArguments(b);
fragmentForVp.setPageAdd(this);
fragments.add(fragmentForVp);
mdd_tab.addTab(mdd_tab.newTab().setText(tabs[i]));
}
myVpAdapter.notifyDataSetChanged();
mdd_tab.setupWithViewPager(vp);
}
@Override
public void getMyDDFailed(String msg) {
Toast.makeText(this, msg, Toast.LENGTH_SHORT).show();
}
@Override
protected void onDestroy() {
super.onDestroy();
iParesenter.destroy();
}
@Override
public void getTabAgain() {
iParesenter.destroy();
iParesenter = new IMyDDParesenter(this);
iParesenter.getJson(Constans.DD + "?uid=" + uid + "&page=" + page);
}
@Override
public void pageAdd() {
page ++;
iParesenter.destroy();
iParesenter = new IMyDDParesenter(this);
iParesenter.getJson(Constans.DD + "?uid=" + uid + "&page=" + page);
}
@Overri