Kotlin我如何使用应用程序类?

时间:2018-12-05 12:17:31

标签: android android-studio kotlin android-developer-api

我如何利用应用程序类来存储可在活动之间共享的非持久数据?以下应用程序具有类型为TicketClass的数组。我希望能够在任何活动中访问并附加到此数组。我似乎找不到任何信息。请指导我,谢谢。

import android.app.Application
import java.text.SimpleDateFormat

class TicketApplication: Application()     {


    var moviesArray:ArrayList<TicketClass>? = null

    var sdf:SimpleDateFormat? = null



    init {

    }

    fun getDateFormat():SimpleDateFormat?{
        return sdf
    }

    fun addTicket(ticket:TicketClass){
        ticketArray?.add(ticket)
    }

    fun getArray():ArrayList<TicketClass>?{
        return ticketArray
    }




}

1 个答案:

答案 0 :(得分:0)

您可以使用伴侣对象,就像Java中的static对象一样。您可以在TicketApplication中执行以下操作:

companion object {
    @JvmStatic fun addTicket(ticket:TicketClass){
        ticketArray?.add(ticket)
    }

    @JvmStatic fun getArray():ArrayList<TicketClass>?{
        return ticketArray
    }

    var ticketArray:ArrayList<TicketClass>? = null
}

init {
     ticketArray = ArrayList<TicketClass>()
}

并按以下方式访问它:

TicketApplication.getArray()