Skip to content

Instantly share code, notes, and snippets.

@faruktoptas
faruktoptas / data_binding.kt
Last active August 2, 2019 15:01
DataBinding samples
// Conditional string
android:text="@{viewModel.startButtonText ? @string/title_start_travel : @string/title_start}"
// Conditional visibility
<import type="android.view.View" />
android:visibility="@{viewModel.visibility == 1 ? View.VISIBLE : View.GONE}"
// Non-string text
android:text="@{String.valueOf(data.minutes)}"
@faruktoptas
faruktoptas / build.gradle
Created November 11, 2018 05:27
Useful gradle commands
// Depenency graph
./gradlew -q dependencies app:dependencies
@adavis
adavis / CommonExtensions.kt
Last active April 2, 2024 20:51
Common Android Extensions in Kotlin
fun View.visible() {
visibility = View.VISIBLE
}
fun View.invisible() {
visibility = View.INVISIBLE
}
fun View.gone() {
visibility = View.GONE
@faruktoptas
faruktoptas / MyRecyclerViewAdapter.kt
Last active September 26, 2018 06:58
Simple RecyclerView Adapter
class MyRecyclerViewAdapter(private val list: List<MyModel>) : RecyclerView.Adapter<MyRecyclerViewAdapter.ViewHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val view = LayoutInflater.from(parent.context).inflate(R.layout.row_recycler, parent, false)
return ViewHolder(view)
}
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
val myModel = list[position]
holder.title.text = myModel.title
@arriolac
arriolac / TopCropImageView.java
Last active September 17, 2024 09:37
Custom Android ImageView for top-crop scaling of the contained drawable.
import android.annotation.TargetApi;
import android.content.Context;
import android.graphics.Matrix;
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.util.AttributeSet;
import android.widget.ImageView;
/**
* Created by chris on 7/27/16.