小编Rah*_*hul的帖子

Android TextUtils.isDigitsOnly为空字符串返回true

android.text.TextUtils.isDigitsOnly("")  
Run Code Online (Sandbox Code Playgroud)

我正在使用上面的代码检查输入字符串是否有效,但isDigitOnly()函数返回true空字符串.

如何让它返回false空字符串或在功能中有其他Android版本?

android

8
推荐指数
1
解决办法
1330
查看次数

将 SwipeToDismiss LazyColumn 项目恢复到原始状态?

我可以做到SwipeToDismiss,但我想将刷卡的LazyColumn项目恢复到原始状态。我不想删除滑动的项目,但想将其恢复到原始状态。

RecyclerView我只需调用即可轻松实现此目的notifyItemChanged(),但不知道如何在LazyColumn.

下面是我的代码:

val dataList = remember{ mutableStateListOf<ListItem>()}
for(i in 0..100){
    dataList.add(ListItem("$i", "'$i' is the item number."))
}

LazyColumn(Modifier.fillMaxSize()){
    items(dataList, key = {it.id}){ item ->
        val dismissState = rememberDismissState(
            confirmStateChange = {
                if(it == DismissedToEnd || it == DismissedToStart){
                    Handler(Looper.getMainLooper()).postDelayed({
                        //dataList.remove(item)
                    }, 1000)
                }
                true
            }
        ) 
        SwipeToDismiss(
            state = dismissState,
            directions = setOf(StartToEnd, EndToStart),
            dismissThresholds = { direction ->
                FractionalThreshold(if (direction == StartToEnd || direction == EndToStart) 0.25f else 0.5f) …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-jetpack-compose

7
推荐指数
1
解决办法
1699
查看次数

如何从Kotlin函数类型返回

我正在使用函数类型来存储要在按钮单击时调用的代码.
如何从此函数返回类型
代码如下:

var SearchClickEvent: ((searchString: String) -> Unit)? = null

inputDialog!!.SearchClickEvent = Search_Click  

private val Search_Click = { searchString: String ->
    if(searchString.isEmpty()){
        return//Error msg : return is not allowed here  
        //How to return from here
    }
}
Run Code Online (Sandbox Code Playgroud)

注意:我将一段代码存储在一个不调用或写入任何函数的变量中

android kotlin

6
推荐指数
1
解决办法
547
查看次数

Kotlin:功能类型不匹配

编译时出现以下错误:

类型不匹配:推断的类型是 (String, Boolean) -> Any but ((String, Boolean) -> Unit)?预料之中

我的类型声明是

private val ConsisFilter_Click = { filterText: String, isStrictSearch: Boolean ->

    try {
        //My Codes
    }
    catch (e: Exception) {
        try {
            alert{}.show()
        }catch (ignored: Exception) {}
    }
}



var ConsisFilterClickEvent:((filterText: String, isStrictSearch: Boolean) -> Unit)? = null 
Run Code Online (Sandbox Code Playgroud)

像这样分配

inputDialog!!.ConsisFilterClickEvent = ConsisFilter_Click
Run Code Online (Sandbox Code Playgroud)

我在其他地方遵循相同的模式,但没有收到任何错误。只有这件特定的作品有问题。难道我做错了什么。请帮我。

注意:如果我将ConsisFilter_Click(try catch 块的代码)的所有代码放入一个单独的函数中,然后简单地ConsisFilter_Click从那时起调用该函数,那么这一切都很好

谢谢

android kotlin

3
推荐指数
1
解决办法
4466
查看次数

无法从java调用kotlin扩展函数

我知道kotlin扩展函数是作为静态函数编译的,使用fileName作为类名,后缀为Kt.问题是我的单个String参数函数在从java代码调用时要求两个String参数.

扩展函数在KUtils文件中

fun String.extractDigits(strValue: String): String {
    val str = strValue.trim { it <= ' ' }
    var digits = ""
    var chrs: Char
    for (i in 0..str.length - 1) {
        chrs = str[i]
        if (Character.isDigit(chrs)) {
            digits += chrs
        }
    }
    return digits
}
Run Code Online (Sandbox Code Playgroud)

调用java代码

KUtilsKt.extractDigits("99PI_12345.jpg")
Run Code Online (Sandbox Code Playgroud)

编译时错误消息:

错误:(206,42)错误:类KUtilsKt中的方法extractDigits不能应用于给定类型;
required:String,String
found:字符串
原因:实际和正式参数列表的长度不同

请帮助
谢谢

java kotlin

3
推荐指数
1
解决办法
685
查看次数

标签 统计

android ×4

kotlin ×4

android-jetpack-compose ×1

java ×1