Skip to content

Commit f22f868

Browse files
committed
Use viewBinding instead of findViewById in VideosFragment
1 parent 91abd3c commit f22f868

1 file changed

Lines changed: 13 additions & 21 deletions

File tree

app/src/main/java/ai/elimu/content_provider/ui/video/VideosFragment.kt

Lines changed: 13 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package ai.elimu.content_provider.ui.video
22

33
import ai.elimu.content_provider.BaseApplication
44
import ai.elimu.content_provider.R
5+
import ai.elimu.content_provider.databinding.FragmentVideosBinding
56
import ai.elimu.content_provider.rest.VideosService
67
import ai.elimu.content_provider.room.GsonToRoomConverter.getVideo
78
import ai.elimu.content_provider.room.db.RoomDb
@@ -13,8 +14,6 @@ import android.util.Log
1314
import android.view.LayoutInflater
1415
import android.view.View
1516
import android.view.ViewGroup
16-
import android.widget.ProgressBar
17-
import android.widget.TextView
1817
import androidx.fragment.app.Fragment
1918
import androidx.lifecycle.Observer
2019
import androidx.lifecycle.ViewModelProvider
@@ -27,33 +26,26 @@ import java.io.FileOutputStream
2726
import java.io.IOException
2827
import 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;
3229
class 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

Comments
 (0)