【发布时间】:2021-11-04 04:40:05
【问题描述】:
我试图在片段中显示snackbar,但无法显示我添加了下面的代码。我尝试了很多方法来显示snackbar,但我不知道如何在选项卡布局片段中显示snackbar,我在fragment 中创建了tabLayout。
class Books : Fragment(), bookadapter.OnBookItemClicklistner {
lateinit var addbooks: FloatingActionButton
lateinit var bookrecyclerView: RecyclerView
lateinit var bookadapter: bookadapter
lateinit var database: FirebaseDatabase
lateinit var databaseReference: DatabaseReference
lateinit var auth: FirebaseAuth
var booklist = arrayListOf<Booksmodel>()
lateinit var bookprogressbar: ProgressBar
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
// Inflate the layout for this fragment
val view = inflater.inflate(R.layout.fragment_books, container, false)
setHasOptionsMenu(true)
addbooks = view.findViewById(R.id.booksFAB)
bookrecyclerView = view.findViewById(R.id.bookrecyclerview)
bookrecyclerView.setHasFixedSize(true)
bookprogressbar = view.findViewById(R.id.bookprogressbar)
bookprogressbar.visibility = View.VISIBLE
auth = FirebaseAuth.getInstance()
database = FirebaseDatabase.getInstance()
databaseReference = database.getReference("Books")
booklist.clear()
bookrecyclerView.layoutManager = LinearLayoutManager(context)
showbooks()
addbooks.setOnClickListener {
startActivity(Intent(context, Addbooks::class.java))
}
if (!isconnected(requireContext())) {
val snackbar = Snackbar.make(view, "No Internet", Snackbar.LENGTH_INDEFINITE)
snackbar.show()
}
return view
}
private fun isconnected(context: Context): Boolean {
val connectionmanager: ConnectivityManager =
context.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
val networkinfo = connectionmanager.activeNetworkInfo
return networkinfo != null && networkinfo.isConnectedOrConnecting
}
}
【问题讨论】:
-
将您的小吃店逻辑移动到
onViewCreated方法中以使其工作
标签: android android-studio kotlin android-snackbar