Skip to content

Instantly share code, notes, and snippets.

View Elijah-Dangerfield's full-sized avatar

Elijah Dangerfield Elijah-Dangerfield

View GitHub Profile
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="appbar_title_height">125dp</dimen>
<dimen name="appbar_header_height">200dp</dimen>
</resources>
import android.util.Log
import com.dangerfield.triviaapp.model.Question
import com.google.firebase.firestore.FirebaseFirestore
class QuestionsRepositoryImp(): QuestionsRepository {
private val db = FirebaseFirestore.getInstance()
override fun getQuestions(): List<Question> {
var result = listOf<Question>()
db.collection("questions").get().addOnSuccessListener {
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 androidx.fragment.app.viewModels
import com.dangerfield.triviaapp.R
import com.dangerfield.triviaapp.api.QuestionsRepositoryImp
import android.util.Log
import androidx.lifecycle.LiveData
import com.dangerfield.triviaapp.model.Question
import com.google.firebase.firestore.FirebaseFirestore
class QuestionsRepositoryImp(): QuestionsRepository {
private val db = FirebaseFirestore.getInstance()
override fun getQuestions(): MutableLiveData<List<Question>> {
import android.util.Log
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import com.dangerfield.triviaapp.model.Question
import com.google.firebase.firestore.FirebaseFirestore
class QuestionsRepositoryImp(): QuestionsRepository {
private val db = FirebaseFirestore.getInstance()
override fun getQuestions(): MutableLiveData<List<Question>> {
import android.os.Bundle
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.viewModels
import androidx.lifecycle.Observer
import com.dangerfield.triviaapp.R
import com.dangerfield.triviaapp.api.QuestionsRepositoryImp
class QuestionsViewModel : ViewModel() {
private val repository: QuestionsRepository = QuestionsRepositoryImp()
private val questions = MutableLiveData<List<Question>>()
}
class QuestionsViewModel : ViewModel() {
private val repository: QuestionsRepository = QuestionsRepositoryImp()
private val questions = MutableLiveData<List<Question>>()
fun getQuestions(): LiveData<List<Question>> {
return questions
}
}
class QuestionsFragment : Fragment() {
val questionsViewModel: QuestionsViewModel by viewModels()
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_questions, container, false)
class QuestionsViewModel : ViewModel() {
private val repository: QuestionsRepository = QuestionsRepositoryImp()
private var questions = MutableLiveData<List<Question>>()
fun getQuestions(): LiveData<List<Question>> {
questions = repository.getQuestions()
return questions
}
}