草庐IT

kotlin_module

全部标签

API 21下方的Kotlin范围

我想存储像键值对我可以用HashMap>:valwomanMap:HashMap>=hashMapOf()@RequiresApi(Build.VERSION_CODES.LOLLIPOP)funcreateMap(){//ThisbothrequiresAPI21valrange=Range(29,35)womanMap[4.6]=Range.create(29,35)}如何在API级别21以下进行此操作?看答案利用IntRange反而:valwomanMap:HashMap=hashMapOf()@RequiresApi(Build.VERSION_CODES.LOLLIPOP)funcr

Kotlin协程

1、什么是协程它其实和线程是有点类似的,可以简单地将它理解成一种轻量级的线程。要知道,我们之前所学习的线程是非常重量级的,它需要依靠操作系统的调度才能实现不同线程之间的切换。而使用协程却可以仅在编程语言的层面就能实现不同协程之间的切换,从而大大提升了并发编程的运行效率。举一个具体点的例子,比如我们有如下foo()和bar()两个方法:funfoo(){a()b()c()}funbar(){x()y()z()}在没有开启线程的情况下,先后调用foo()和bar()这两个方法,那么理论上结果一定是a()、b()、c()执行完了以后,x()、y()、z()才能够得到执行。而如果使用了协程,在协程A中

【Threads and QObjects,Thread-Support in Qt Modules】线程和QObjects,Qt模块中的线程支持

ThreadsandQObjectsThreads继承了QObjects类。它发出信号来指示线程已开始执行或已完成执行,并提供一些槽函数。更有趣的是,QObjects可以在多个线程中使用,发出调用其他线程中槽的信号,并将事件发布到“live”在其他线程中的对象。这是可能的,因为每个线程都允许有自己的事件循环。QObjectReentrancyQObject的重入QObject是可重入的。它的大多数非GUI子类,如QTimer、QTcpSocket、QUdpSocket和QProcess,也是可重入的,因此可以同时从多个线程使用这些类。请注意,这些类被设计为在单个线程中创建和使用;不能保证在一个

android - Kotlin 和@Transient

上课:openclassMessageDTO:RealmObject,Serializable{@PrimaryKey@SerializedName("message_id")varmessageId:String?=null@SerializedName("chat")varchat:String?=null@SerializedName("chat_type")varchatType:String?=null@SerializedName("content")varcontent:ContentDTO?=null@SerializedName("created")varcreate

android - Kotlin 并行协程

从单独的协同程序中保存多个作业实例是否可以接受。假设我想同时运行几个协程,其中它们不相关并且不能在一个协程中发生,但我希望它们并行运行。在Android中,我应该保存作业实例,以便我可以在onDestroy方法中取消作业。将每项工作分别保存在列表中是否可以接受,或者我是否违反了某种规则。我知道在RX中他们有订阅,为什么KotlinCoroutines中没有等效项?valjobList=arrayListOf()funstartJob1(){jobList.add(launch{//dosomework})funstartJob1(){jobList.add(launch{//dosom

android - 在 Kotlin Android 中使用 NumberFormat.getCurrency

我需要调用这个{privatestaticfinalNumberFormatcurrencyFormat=NumberFormat.getCurrencyInstance();}在Android应用程序中,但我使用的是Kotlin,但我不知道如何在Kotlin中执行此操作。我如何在Kotlin中执行此操作? 最佳答案 使用如下:privatevalcurrencyFormat=NumberFormat.getCurrencyInstance() 关于android-在KotlinAndr

android - 房间 kotlin : Entities and Pojos must have a usable public constructor. 卡在这个错误上

我有两个错误错误:用@Relation注释的字段不能是构造函数参数。这些值是在构造对象后获取的。错误:用@Relation注释的字段不能是构造函数参数。这些值是在构造对象后获取的。我有两张table。一个是任务表,另一个是子任务表。对于每个任务表实体,都有一些子任务表实体。所以我试图从单个任务中获取所有任务和子任务列表道:@Query("Select*fromTaskTable")fungetTasks():List任务模型:classTaskModel(@EmbeddedvartaskTable:TaskTable,@Relation(parentColumn="id",entity

android - 对象不是 Kotlin 中此 Realm 的模式的一部分

我有一节这样的公开课openclassNewsResponse(@field:SerializedName("news")valnews:List?=null):RealmObject()像这样的NewsItem类openclassNewsItem(@field:SerializedName("created")valcreated:String?=null,@field:SerializedName("link")vallink:String?=null,@field:SerializedName("description")valdescription:String?=null,@

android - Kotlin - 在 Android 中转换 Singleton DatabaseController 的最佳方式

我正在通过“KotlininAction”学习Kotlin,并且正在慢慢将Android应用程序代码转换为它。但是我在转换下面的类时发现了一些问题。publicclassDatabaseController{privatestaticDatabaseControllersDatabaseController;privateSQLiteDatabasemDatabase;privateDatabaseController(Contextcontext){mDatabase=newSQLiteOpenHelperImpl(context.getApplicationContext()).g

android - 返回后的 kotlin android fragment 空回收器 View

我有这个安卓fragment:classMainFragment:BaseFragment(){privatevalrecyclerViewbylazy{find(R.id.recyclerView)}privatevalfabbylazy{find(R.id.fab)}privatevalmyLayoutManagerbylazy{LinearLayoutManager(ctx,LinearLayoutManager.VERTICAL,false)}privatevalmyAdapterbylazy{MainCardAdapter(ctx,ArrayList(),R.layout.c