Skip to content

Instantly share code, notes, and snippets.

package com.example.coroutinelearning.viewModels.learning
import android.app.Application
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import com.example.coroutinelearning.repositories.MyRepositoryTwo
import java.lang.IllegalArgumentException
class MyAndroidViewModelFactoryFour(
private val application: Application,
@senamit2708
senamit2708 / ByDelegateFragment.kt
Created July 5, 2023 09:25
By - delegates basic learning
package com.example.coroutinelearning.fragments
import android.os.Bundle
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import com.example.coroutinelearning.databinding.ByDelegateLearningBinding
package com.example.coroutinelearning.fragments
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import androidx.fragment.app.activityViewModels
import androidx.lifecycle.Observer
import com.example.coroutinelearning.databinding.NewUserEntryBinding
@senamit2708
senamit2708 / SealedLearningFrag.kt
Created July 6, 2023 09:02
multiple button with "when"
class SealedLearningFrag: Fragment(), View.OnClickListener{
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
binding.btnEmployee.setOnClickListener(this)
binding.btnManager.setOnClickListener(this)
binding.btnJuniorDev.setOnClickListener(this)
}
@senamit2708
senamit2708 / Employee.kt
Created July 6, 2023 09:10
Sealed Class Learning
package com.example.coroutinelearning.entity
sealed class Employee //there is no need of {}, its optional
//if you use {}, u have to call class with use of Employee class, like Employee.Manager from fragment/activity. else u will be
//able to directly call it.
data class Manager(val name: String, val age: Int, val team: List<String>) : Employee()
class SeniorDev(val name: String, val age: Int, val project: String) : Employee()
object JuniorDev : Employee()
@senamit2708
senamit2708 / NewUserEntryFragment.kt
Last active August 11, 2023 13:13
extension function
private fun saveUserDetailToDB() {
val name = binding.txtName.text.toString()
var mobNo = binding.txtMobNo.text.toString()
mobNo = mobNo.addMobileExtension() //extension function
var user = User(name = name, mobileNumber = mobNo)
user = user.firstLetterCapital() //extension function
userViewModel.saveUserDetail(user)
}
@senamit2708
senamit2708 / AndroidMainfest.xml
Created July 11, 2023 07:11
Retrofit Basic Learning
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
@senamit2708
senamit2708 / ApiInterface.kt
Created July 11, 2023 14:27
Retrofit with coroutine -> Advance One
package com.example.coroutinelearning.retrofits
import com.example.coroutinelearning.entity.Root
import retrofit2.Response
import retrofit2.http.GET
import retrofit2.http.Query
interface ApiInterface {
@GET("/api/users")
@senamit2708
senamit2708 / ApiInterface.kt
Created July 12, 2023 09:07
Retrofit with Series network call having coroutine and sealed class
package com.example.coroutinelearning.retrofits
import com.example.coroutinelearning.entity.Root
import retrofit2.Response
import retrofit2.http.GET
import retrofit2.http.Query
interface ApiInterface {
@GET("/api/users")
@senamit2708
senamit2708 / ApiInterface.kt
Created July 12, 2023 11:17
Retrofit: Parallel network call
package com.example.coroutinelearning.retrofits
import com.example.coroutinelearning.entity.Root
import retrofit2.Response
import retrofit2.http.GET
import retrofit2.http.Query
interface ApiInterface {
@GET("/api/users")