开发工具:idea,mysql, Android,夜神
技术:android+springboot
前后端分离项目
移动端架构:
后端架构:
部分代码:
Android:
package com.huel.activity; import android.app.Activity; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.content.Context; import android.content.SharedPreferences; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.ImageView; import android.widget.Toast; import com.huel.fragment.Cart_Fragment; import com.huel.fragment.Index_Fragment; import com.huel.fragment.Mine_fragment; import com.huel.fragment.SearchFragment; import com.huel.fragment.UpdateAddress_fragment; import com.huel.fragment.login_Fragment; public class MainActivity extends Activity { private Index_Fragment index_fragment; private login_Fragment login_fragment; private Cart_Fragment cart_fragment; private Mine_fragment mine_fragment; private ImageView imb ,btn_cart,search; private ImageView first_page_icon; private SearchFragment searchFragment; private UpdateAddress_fragment fragment; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); imb=findViewById(R.id.myfile_icon); btn_cart=findViewById(R.id.btn_cart); search=findViewById(R.id.search_icon); first_page_icon=findViewById(R.id.first_page_icon); // 初始化创建一个SharedPreferences对象 //步骤1:创建一个SharedPreferences对象 SharedPreferences sharedPreferences= getSharedPreferences("data", Context.MODE_PRIVATE); // 剩下的让Fragment去调用 //activity 启动之后 准备开启首页 getIndex(); //插入一条数据 测试使用 first_page_icon.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { //逻辑为 点击之后 跳转到 首页 if (index_fragment == null) { index_fragment = new Index_Fragment(); } //创建FragmentManager对象 FragmentManager manager = getFragmentManager(); //创建FragmentTransaction事务对象 FragmentTransaction fragmentTransaction = manager.beginTransaction(); //使用replace(将要替换位置的i的,替换的页面)方法实现页面的替换 // 所谓 替换 就是 先去移除 fragment 然后 再添加fragment 移除所有fragment fragmentTransaction.replace(R.id.fragment, index_fragment); //提交事务 fragmentTransaction.commit(); Toast.makeText(MainActivity.this,"切换成功",Toast.LENGTH_SHORT).show(); } }); imb.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { //逻辑为 点击之后 跳转到 另一个 登录 fragment 然后实现登录 // 判断有没有 tel 这个东西 有的话 说明用户已经登录过了 不需要再登录 SharedPreferences sharedPreferences= getSharedPreferences("data", Context .MODE_PRIVATE); String tel=sharedPreferences.getString("tel",""); Log.i("tel",tel); if(tel==""||tel==null){ if (login_fragment == null) { login_fragment = new login_Fragment(); } //创建FragmentManager对象 FragmentManager manager = getFragmentManager(); //创建FragmentTransaction事务对象 FragmentTransaction fragmentTransaction = manager.beginTransaction(); //使用replace(将要替换位置的i的,替换的页面)方法实现页面的替换 // 所谓 替换 就是 先去移除 fragment 然后 再添加fragment 移除所有fragment Bundle bundle = new Bundle(); fragmentTransaction.replace(R.id.fragment, login_fragment); //提交事 fragmentTransaction.commit(); Toast.makeText(MainActivity.this,"切换成功",Toast.LENGTH_SHORT).show(); }else { // 直接跳到个人主页 getMine(tel); } } }); btn_cart.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Toast.makeText(MainActivity.this,"我的购物车",Toast.LENGTH_SHORT).show(); SharedPreferences sharedPreferences= getSharedPreferences("data", Context .MODE_PRIVATE); String tel=sharedPreferences.getString("tel",""); //逻辑为 点击之后 跳转到 另一个 登录 fragment 然后实现登录 if (cart_fragment == null) { cart_fragment = new Cart_Fragment(); cart_fragment.setTel(tel); } //创建FragmentManager对象 FragmentManager manager = getFragmentManager(); //创建FragmentTransaction事务对象 FragmentTransaction fragmentTransaction = manager.beginTransaction(); //使用replace(将要替换位置的i的,替换的页面)方法实现页面的替换 // 所谓 替换 就是 先去移除 fragment 然后 再添加fragment 移除所有fragment Bundle bundle = new Bundle(); fragmentTransaction.replace(R.id.fragment, cart_fragment); //提交事 fragmentTransaction.commit(); Toast.makeText(MainActivity.this,"切换成功",Toast.LENGTH_SHORT).show(); } }); search.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { getPhone(); } }); } public void getIndex() { if (index_fragment == null ) { index_fragment = new Index_Fragment(); } //创建FragmentManager对象 FragmentManager manager = getFragmentManager(); //创建FragmentTransaction事务对象 FragmentTransaction fragmentTransaction = manager.beginTransaction(); //使用replace(将要替换位置的i的,替换的页面)方法实现页面的替换 //图片按钮点击之后 用 addinformationFragment 去替换页面 // 所谓 替换 就是 先去移除 fragment 然后 再添加fragment 移除所有fragment fragmentTransaction.add(R.id.fragment, index_fragment); //提交事务 fragmentTransaction.commit(); } public void getPhone() { if (fragment == null ) { searchFragment = new SearchFragment(); } //创建FragmentManager对象 FragmentManager manager = getFragmentManager(); //创建FragmentTransaction事务对象 FragmentTransaction fragmentTransaction = manager.beginTransaction(); fragmentTransaction.replace(R.id.fragment, searchFragment); //提交事务 fragmentTransaction.commit(); } public void getMine(String username) { if (mine_fragment == null ) { mine_fragment = new Mine_fragment(); } mine_fragment.setUsername(username); //创建FragmentManager对象 FragmentManager manager = getFragmentManager(); FragmentTransaction fragmentTransaction = manager.beginTransaction(); fragmentTransaction.replace(R.id.fragment, mine_fragment); //提交事务 fragmentTransaction.commit(); } @Override protected void onDestroy() { super.onDestroy(); SharedPreferences.Editor editor = getSharedPreferences("data", Context.MODE_PRIVATE).edit(); editor.clear(); editor.commit(); } }
运行效果图:
项目地址:
可远程部署调试私信博主。