Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

View hluhovskyi's full-sized avatar

Artem Hluhovskyi hluhovskyi

  • Snapchat
  • Odessa
View GitHub Profile
private TextView errorMessage;
@Override
protected void onCreate(Bundle savedInstanceState) {
errorMessage = (TextView) findViewById(R.id.error_message);
}
private lateinit var errorMessage: TextView
override fun onCreate(savedInstanceState: Bundle?) {
errorMessage = findViewById(R.id.error_message) as TextView
}
fun <T : View> Activity.getViewById(@IdRes id: Int): T {
return findViewById(id) as T
}
private lateinit var errorMessage: TextView
override fun onCreate(savedInstanceState: Bundle?) {
errorMessage = getViewById(R.id.error_message)
}
private val errorMessage: TextView by lazy { getViewById(R.id.error_message) }
class ViewFinderDelegate<T : View> : ReadOnlyProperty<Activity, T> {
private object EMPTY
private val id: Int
private var view: Any? = Empty
constructor(@IdRes id: Int) {
this.id = id
}
private val errorMessage: TextView by ViewFinderDelegate(R.id.error_message)
fun <T : View> Activity.view(IdRes id: Int): ReadOnlyProperty<Activity, T>
= ViewFinderDelegate(id)
private val errorMessage: TextView by view(R.id.errorMessage)
interface ContextProvdier {
fun provideContext(): Context
}
class OwnActivity : AppCompatActivity(), ContextProvider {
fun provideContext() = this
}
class OwnFragment : Fragment(), ContextProvider {
fun provideContext() = context