Java中添加kotlin回调函数

编程入门 行业动态 更新时间:2024-10-27 18:23:08

Java中添加kotlin<a href=https://www.elefans.com/category/jswz/34/1771356.html style=回调函数"/>

Java中添加kotlin回调函数

 Java中调动kotlin方法,然后传一个kotlin的callback,onItemSelected: ((Int) -> Unit)


class WheelOptionPicker() {fun showReasonPicker(context: Context,reasons: List<String>,onItemSelected: ((Int) -> Unit)) {AppUtils.hideKeyBoard(context as Activity)var index = 0var pvOptions: OptionsPickerView<String>? = nullpvOptions = OptionsPickerBuilder(context, null).setLayoutRes(R.layout.option_picker_view) { v ->v.text_left.fillVisible(false)v.text_title.text = context.getString(R.string.please_choice_dispose_reason)val picker = v.optionspickerpicker.setPadding(DisplayUtil.dp2px(32f), DisplayUtil.dp2px(16f),DisplayUtil.dp2px(32f), DisplayUtil.dp2px(16f))val opt1: WheelView = v.options1 // 初始化时显示的数据v.text_right.text = context.getString(R.string.str_save)v.text_right.setOnClickListener {val currentItems = IntArray(3)currentItems[0] = opt1.currentItempvOptions?.dismiss()onItemSelected(currentItems[0])}}.setTextColorCenter(ContextCompat.getColor(context, R.color.delivery_primary_text_color)).setItemVisibleCount(7).setContentTextSize(23).isAlphaGradient(true).setLineSpacingMultiplier(1.5f).setOutSideCancelable(true).setSelectOptions(index).build<String>()pvOptions?.setPicker(reasons)pvOptions?.setSelectOptions(index)pvOptions?.show()}
}
private void showPop() {new WheelOptionPicker().showReasonPicker(this, mDisposeMessageList//写法一:写了new 之后,使用alt+回车就可以自动补全Function1函数//另:commend+P只能提示参数,不能自动补全/* , new Function1<Integer, Unit>() {@Overridepublic Unit invoke(Integer integer) {if (mBizTaskInfo != null && mBizTaskInfo.getBizTaskNo() != null) {presenter.patchDisposeBusinessTaskMessage(mRxManager, mFdApiService,mDisposeMessageList.get(integer),mBizTaskInfo == null ? null : mBizTaskInfo.getBizTaskNo(), this);} else {ToastUtil.toast("提交信息有误");}return null;}}*///写法二:让系统自己简写,就成了这样,integer -> {if (mBizTaskInfo != null && mBizTaskInfo.getBizTaskNo() != null) {presenter.patchDisposeBusinessTaskMessage(mRxManager, mFdApiService,mDisposeMessageList.get(integer),mBizTaskInfo == null ? null : mBizTaskInfo.getBizTaskNo(), this);} else {ToastUtil.toast("提交信息有误");}return null;});

 可以在Java中输入参数后,使用commnd+p使用提示

 

 

更多推荐

Java中添加kotlin回调函数

本文发布于:2024-02-11 19:07:21,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1682808.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:回调   函数   Java   kotlin

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!