今天完善了结对作业后端,安卓正用fragement进行切换
package com.example.sub import android.annotation.SuppressLint import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import androidx.fragment.app.Fragment import com.example.sub.fragment.DashboardFragment import com.example.sub.fragment.NotificationsFragment import com.example.sub.fragment.HomeFragment import com.google.android.material.bottomnavigation.BottomNavigationView class MainActivity : AppCompatActivity() { private lateinit var bottomNavigationView: BottomNavigationView private val navListener = BottomNavigationView.OnNavigationItemSelectedListener { item -> var selectedFragment: Fragment? = null when (item.itemId) { R.id.nav_home -> selectedFragment = HomeFragment() R.id.nav_dashboard -> selectedFragment = DashboardFragment() R.id.nav_notifications -> selectedFragment = NotificationsFragment() } supportFragmentManager.beginTransaction().replace( R.id.fragment_container, selectedFragment!!).commit() true } @SuppressLint("MissingInflatedId") override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) bottomNavigationView = findViewById(R.id.bottom_navigation) bottomNavigationView.setOnNavigationItemSelectedListener(navListener) // 默认显示 HomeFragment supportFragmentManager.beginTransaction().replace(R.id.fragment_container, HomeFragment() ).commit() } }
package com.example.sub.fragment import android.os.Bundle import android.util.Log import androidx.fragment.app.Fragment import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.Button import android.widget.EditText import android.widget.ImageView import android.widget.TextView import com.example.sub.R import com.example.sub.pojo.Result import com.example.sub.service.GstationService import com.example.subway.network.ServiceCreator import retrofit2.Call import retrofit2.Callback import retrofit2.Response class HomeFragment : Fragment() { override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { return inflater.inflate(R.layout.fragment_home, container, false) } override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) val gstationService=ServiceCreator.create<GstationService>() val button=view.findViewById<Button>(R.id.left_buttonSearch) val star=view.findViewById<EditText>(R.id.left_editTextStart) val end=view.findViewById<EditText>(R.id.left_editTextEnd) val resultTv=view.findViewById<TextView>(R.id.left_textViewResult) val imageView=view.findViewById<ImageView>(R.id.left_image) button.setOnClickListener { gstationService.getsmall(star.text.toString(),end.text.toString()).enqueue(object :Callback<Result>{ override fun onResponse(call: Call<Result>, response: Response<Result>) { val result=response.body() resultTv.text=result?.data imageView.visibility = View.VISIBLE // 显示图片 Log.e("TAG", "onResponse: ${result?.data}", ) } override fun onFailure(call: Call<Result>, t: Throwable) { Log.e("TAG", "失败,${t.toString()}", ) } }) } } }