Size: a a a

StartAndroid Ru Kotlin

2018 October 24

ДА

Джамал Алиев... in StartAndroid Ru Kotlin
Rinat Vasilev
@synar Причём, я бы рекомендовал во вьюПэйджере использовать вьюшки (заинфлэйченные лэйауты), а не фрагменты. ИМХО
Почему?
источник

ДА

Джамал Алиев... in StartAndroid Ru Kotlin
То есть будет переключаться вьюхи а не фрагменты
источник

RV

Rinat Vasilev in StartAndroid Ru Kotlin
Во-первых, вьюхами легче управлять, а, во-вторых, если у тебя viewPager уже внутри фрагмента, то вложенные фрагменты - это плохо
источник

ДА

Джамал Алиев... in StartAndroid Ru Kotlin
👍 круто
источник

ДА

Джамал Алиев... in StartAndroid Ru Kotlin
Большое спасибо
источник

ДА

Джамал Алиев... in StartAndroid Ru Kotlin
Новая информация
источник

RV

Rinat Vasilev in StartAndroid Ru Kotlin
Джамал Алиев
Большое спасибо
Да не за что)
источник
2018 October 25

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
может ли класс узнать тип своего дженерика?
class test<T> {
   fun isInt(): Boolean {
       return T::class == Int::class
   }
}
или я зря пытаюсь и это невозможно?
источник

A

Aleksandr in StartAndroid Ru Kotlin
источник

A

Aleksandr in StartAndroid Ru Kotlin
попробуй
inline fun <reified T> isInt()
источник

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
Aleksandr
попробуй
inline fun <reified T> isInt()
классно, но малопонятно...
а со свойством так же как нибудь можно сделать?

class test <T> {
   inline val isInt: Boolean
       get() {
           return T::class == Int::class
       }
}
источник

A

Aleksandr in StartAndroid Ru Kotlin
попробуй так
inline fun <reified T> checkIntType().....

val isInt: Boolean
 get() {
   return checkIntType()
 }
источник

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
Aleksandr
попробуй так
inline fun <reified T> checkIntType().....

val isInt: Boolean
 get() {
   return checkIntType()
 }
Not enough information to infer parameter T
источник

A

Aleksandr in StartAndroid Ru Kotlin
val isInt: Boolean
   get() {
     return checkIntType<Int>()
   }
источник

MK

Mikhail Kozlov in StartAndroid Ru Kotlin
Не получится проверить тип через T::class, если он не reified, потому что он не известен во время компиляции
источник

A

Aleksandr in StartAndroid Ru Kotlin
я запустил код в IDE - нормально отработало
источник

MK

Mikhail Kozlov in StartAndroid Ru Kotlin
Покажешь? Интересно просто
источник

A

Aleksandr in StartAndroid Ru Kotlin
TestClass<Int>().also {
   println(" Int : ${it.isInt}")
 }

class TestClass<T> {
 private inline fun <reified T> checkIntType(): Boolean {
   return Int::class == T::class
 }

 val isInt: Boolean
   get() {
     return checkIntType<Int>()
   }
}
источник

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
у меня смутные ощущения что checkIntType<Int>() будет сверять этот переданный инт с внутренним интом внутри checkIntType
разве нет?
источник

A

Aleksandr in StartAndroid Ru Kotlin
или так
class TestClass<T> {
 private inline fun <reified T> checkIntType(): Boolean {
   return Int::class == T::class
 }

 val isInt: Boolean by lazy {
   checkIntType<Int>()
 }
}
источник