@@ -2,6 +2,7 @@ package ai.elimu.content_provider.ui.video
22
33import ai.elimu.content_provider.BaseApplication
44import ai.elimu.content_provider.R
5+ import ai.elimu.content_provider.databinding.FragmentVideosBinding
56import ai.elimu.content_provider.rest.VideosService
67import ai.elimu.content_provider.room.GsonToRoomConverter.getVideo
78import ai.elimu.content_provider.room.db.RoomDb
@@ -13,8 +14,6 @@ import android.util.Log
1314import android.view.LayoutInflater
1415import android.view.View
1516import android.view.ViewGroup
16- import android.widget.ProgressBar
17- import android.widget.TextView
1817import androidx.fragment.app.Fragment
1918import androidx.lifecycle.Observer
2019import androidx.lifecycle.ViewModelProvider
@@ -27,33 +26,26 @@ import java.io.FileOutputStream
2726import java.io.IOException
2827import java.util.concurrent.Executors
2928
30- // import ai.elimu.content_provider.room.dao.Video_WordDao;
31- // import ai.elimu.content_provider.room.entity.Video_Word;
3229class VideosFragment : Fragment () {
3330 private var videosViewModel: VideosViewModel ? = null
34-
35- private var progressBar: ProgressBar ? = null
36-
37- private var textView: TextView ? = null
31+ private lateinit var binding: FragmentVideosBinding
3832
3933 override fun onCreateView (
4034 inflater : LayoutInflater ,
4135 container : ViewGroup ? ,
4236 savedInstanceState : Bundle ?
43- ): View ? {
37+ ): View {
4438 Log .i(javaClass.name, " onCreateView" )
4539
4640 videosViewModel = ViewModelProvider (this )[VideosViewModel ::class .java]
47- val root = inflater.inflate(R .layout.fragment_videos, container, false )
48- progressBar = root.findViewById(R .id.progress_bar_videos)
49- textView = root.findViewById(R .id.text_videos)
41+ binding = FragmentVideosBinding .inflate(layoutInflater)
5042 videosViewModel!! .text.observe(viewLifecycleOwner, object : Observer <String ?> {
5143 override fun onChanged (s : String? ) {
5244 Log .i(javaClass.name, " onChanged" )
53- textView? .text = s
45+ binding.textVideos .text = s
5446 }
5547 })
56- return root
48+ return binding. root
5749 }
5850
5951 override fun onStart () {
@@ -83,10 +75,10 @@ class VideosFragment : Fragment() {
8375 }
8476 } else {
8577 // Handle error
86- Snackbar .make(textView !! , response.toString(), Snackbar .LENGTH_LONG )
78+ Snackbar .make(binding.textVideos , response.toString(), Snackbar .LENGTH_LONG )
8779 .setBackgroundTint(resources.getColor(R .color.deep_orange_darken_4))
8880 .show()
89- progressBar !! .visibility = View .GONE
81+ binding.progressBarVideos .visibility = View .GONE
9082 }
9183 }
9284
@@ -96,10 +88,10 @@ class VideosFragment : Fragment() {
9688 Log .e(javaClass.name, " t.getCause():" , t.cause)
9789
9890 // Handle error
99- Snackbar .make(textView !! , t.cause.toString(), Snackbar .LENGTH_LONG )
91+ Snackbar .make(binding.textVideos , t.cause.toString(), Snackbar .LENGTH_LONG )
10092 .setBackgroundTint(resources.getColor(R .color.deep_orange_darken_4))
10193 .show()
102- progressBar !! .visibility = View .GONE
94+ binding.progressBarVideos .visibility = View .GONE
10395 }
10496 })
10597 }
@@ -171,10 +163,10 @@ class VideosFragment : Fragment() {
171163 val videos = videoDao.loadAll()
172164 Log .i(javaClass.name, " videos.size(): " + videos.size)
173165 activity!! .runOnUiThread {
174- textView !! .text = " videos.size(): " + videos.size
175- Snackbar .make(textView !! , " videos.size(): " + videos.size, Snackbar .LENGTH_LONG )
166+ binding.textVideos .text = " videos.size(): " + videos.size
167+ Snackbar .make(binding.textVideos , " videos.size(): " + videos.size, Snackbar .LENGTH_LONG )
176168 .show()
177- progressBar !! .visibility = View .GONE
169+ binding.progressBarVideos .visibility = View .GONE
178170 }
179171 }
180172 })
0 commit comments