【发布时间】:2019-05-21 13:28:28
【问题描述】:
我有一个类类别,我传递给额外的,点击的类别。 这在 6 个屏幕中有效,但在最后一个屏幕中我收到 null
我把额外的活动放在哪里
adapter.setOnItemClickListener { item, view ->
val categories = item as Categories
val intent = Intent(view.context, LearningFirstLibras::class.java)
intent.putExtra(CATEGORY_KEY, categories.category)
startActivity(intent)
}
类别
@Parcelize
class Category(
val name: String,
val imageURL: String,
val real_name: String,
val object_1_screen_libras_image: String,
val object_1_screen_libras_text: String,
val object_2_screen_libras_text: String,
val object_2_screen_libras_image: String,
val object_3_screen_libras_text: String,
val object_3_screen_libras_image: String,
val object_1_screen_asl_text: String,
val object_1_screen_asl_image: String,
val object_2_screen_asl_text: String,
val object_2_screen_asl_image: String,
val object_3_screen_asl_text: String,
val object_3_screen_asl_image: String,
val question: String,
val answer: String,
val alternative_1: String,
val alternative_2: String,
val alternative_3: String,
val alternative_4: String
) : Parcelable {
constructor() : this("", "", "", "", "",
"","","","",
"","","","",
"","","","","","",
"","")
}
我得到 null 的活动
class Quiz : AppCompatActivity() {
var categoryF:Category = Category()
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_quiz)
categoryF = intent.getParcelableExtra(NewWordsActivity.CATEGORY_KEY)
【问题讨论】:
-
无需创建 constructor() : this("", "", "", "", "", "","","","", "","" ,"","", "","","","","","", "","")
-
确保 categories.category 不为 null ,尝试调试您的代码。
-
您正在启动
LearningFirstLibras活动但读取Quiz活动中的值? -
我使用日志来获取 categories.category 和 categories.category 中的 2 个值我得到了值:2019-05-21 09:37:33.436 5433-5433/com.educator.dualsignal D /teste: com.educator.dualsignal.models.Category@a870587 / 2019-05-21 09:38:43.790 5622-5622/com.educator.dualsignal D/teste: foods_1 / 2019-05-21 09:38:43.792 5622-5622/com.eductor.dualsignal D/teste:alternativa_1
-
你应该开始
Quiz而不是LearningFirstLibras,可能。
标签: android android-intent kotlin