From b9dec99e55fae1e4d9b68932c296b13ed106c2d5 Mon Sep 17 00:00:00 2001 From: puem2gl9z <2777269348@qq.com> Date: Fri, 30 Aug 2024 15:39:25 +0800 Subject: [PATCH] ADD file via upload --- OrderActivity.java | 77 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 OrderActivity.java diff --git a/OrderActivity.java b/OrderActivity.java new file mode 100644 index 0000000..6fda6e3 --- /dev/null +++ b/OrderActivity.java @@ -0,0 +1,77 @@ +package com.example.drink_order_system; + +import android.annotation.SuppressLint; +import android.app.Fragment; +import android.app.FragmentManager; +import android.app.FragmentTransaction; +import android.os.Bundle; +import android.widget.RadioButton; +import android.widget.RadioGroup; + +import androidx.appcompat.app.AppCompatActivity; + +public class OrderActivity extends AppCompatActivity { + + private RadioGroup rg_tab_bar; + private RadioButton rb_order; + private Fragment fg_order; //点餐界面 + private Fragment fg_shop; //购物车界面 + private FragmentManager fManager; + private String userName; + private String restaurantName; + Bundle bundle = new Bundle(); + @SuppressLint("MissingInflatedId") + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_order); + + userName = getIntent().getStringExtra("userName"); + restaurantName = getIntent().getStringExtra("restaurantName"); + bundle.putString("userName", userName); + bundle.putString("restaurantName", restaurantName); + System.out.println("username in onCreate in OrderActivity: " + userName); + fManager = getFragmentManager(); + rg_tab_bar = (RadioGroup) findViewById(R.id.rg_tab); + rg_tab_bar.setOnCheckedChangeListener(this::onCheckedChanged); //对下方导航栏设置监听,实现界面切换 + defaultFragment(); // 将点单界面设为默认界面 + } + public void onCheckedChanged(RadioGroup group, int checkedId) { //界面切换函数 + FragmentTransaction fTransaction = fManager.beginTransaction(); + hideAllFragment(fTransaction); //先隐藏所有界面 + switch (checkedId){ + case R.id.rb_order: + if(fg_order==null) + { + fg_order = OrderFragment.newInstance(restaurantName); + fTransaction.add(R.id.ly_content,fg_order); + fTransaction.show(fg_order); + } + else + fTransaction.show(fg_order); + break; + case R.id.rb_shop: + if(fg_shop==null) + { + fg_shop = ShopFragment.newInstance(userName,restaurantName); + fTransaction.add(R.id.ly_content,fg_shop); + fTransaction.show(fg_shop); + } + else + fTransaction.show(fg_shop); + break; + } + fTransaction.commit(); + } + public void defaultFragment() { + FragmentTransaction fTransaction = fManager.beginTransaction(); + fg_order = OrderFragment.newInstance(restaurantName); + fTransaction.add(R.id.ly_content, fg_order); + fTransaction.show(fg_order); + fTransaction.commit(); + } + private void hideAllFragment(FragmentTransaction fragmentTransaction){ + if(fg_order!=null)fragmentTransaction.hide(fg_order); + if(fg_shop!=null)fragmentTransaction.hide(fg_shop); + } +} \ No newline at end of file