记录一
匿名内部类实现接口记录,例如点击事件,回调事件。使用object作为内部实现类。
方式一
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 3000, 1f, object : LocationListener {
override fun onLocationChanged(location: Location) {
}
override fun onStatusChanged(provider: String, status: Int, extras: Bundle) {
}
override fun onProviderEnabled(provider: String) {
}
override fun onProviderDisabled(provider: String) {
}
})
方式二
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 3000, 1F, locationListener)
val locationListener = MyLocationListener()
inner class MyLocationListener : LocationListener {
override fun onLocationChanged(location: Location?) {
Log.d("haha", "onLocationChanged = $location")
getCity(location)
}
override fun onStatusChanged(provider: String?, status: Int, extras: Bundle?) {
Log.d("haha", "onStatusChanged = $provider")
}
override fun onProviderEnabled(provider: String?) {
Log.d("haha", "onProviderEnabled = $provider")
}
override fun onProviderDisabled(provider: String?) {
Log.d("haha", "onProviderDisabled = $provider")
}
}
XML引号使用
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{@string/format_day_s( viewModel.yingCheDai.bidDays)}"
android:textColor="@color/colorWhite"
android:visibility='@{viewModel.yingCheDai.bidDays == "0" ? View.GONE : View.VISIBLE}' />
动态设置字体大小
- setTextSize(TypedValue.COMPLEX_UNIT_PX,15.0F);
- setTextSize(TypedValue.COMPLEX_UNIT_SP,15.0F);
- setTextSize(TypedValue.COMPLEX_UNIT_DIP,15.0F);
例子:
fragment.top_bar.top_title_tv.setTextSize(TypedValue.COMPLEX_UNIT_SP, 15.0F)
动态设置TextView drawableRight 等
val drawableRight = tvTitle.context.resources.getDrawable(R.drawable.icon_yue)
//一定要设置这个
drawableRight.setBounds(0,0,drawableRight.minimumWidth,drawableRight.minimumHeight)
tvTitle.setCompoundDrawables(null,null, drawableRight,null)
kotlin json
fromjson
val turnsType = object : TypeToken< HashMap<String,String>>() {}.type
val rootMap = mGson.fromJson<HashMap<String,String>>(oldParamsJson, turnsType) //原始参数
//或者
val rootMap = mGson.fromJson<HashMap<String,String>>(oldParamsJson, HashMap::class.java) //原始参数