如何在没有上下文的情况下使用 volley 或可组合上下文的替代方案?

问题描述 投票:0回答:1

val queue
需要一个context,我必须使用上下文,所以我必须使用@Composable,这样我才能编写
val context
。但问题是我想使用这个函数的地方,里面没有Composable,所以我不能使用这个函数。

如何在没有上下文的情况下编写 volley 请求,或者告诉我在此处编写上下文的替代方法?

    @Composable
  fun MyMainVolley() {

  val context = LocalContext.current
  val queue = Volley.newRequestQueue(context)

  val url = "https://rezaapp.downloadseriesmovie.ir/maintxt.php"
  val stringRequest = StringRequest(
    Request.Method.GET, url,
    { response ->
       baseUrl = response
    },
    { println("That didn't work!") })
 queue.add(stringRequest)
  }
android-jetpack-compose android-volley android-jetpack
1个回答
3
投票

您可以将

Context
作为参数传递。

类似:

@Composable
fun test1() {

    val context = LocalContext.current
    val response = remember { mutableStateOf("") }

    Column(){
        Button(
           onClick = { MyMainVolley(context,response) }
        ){
        Text("Start volley")
        }
    

       Text(response.value)
    }
}

fun MyMainVolley(
    context: Context,
    result: MutableState<String>
) {

    val queue = Volley.newRequestQueue(context)

    val url = "https://rezaapp.downloadseriesmovie.ir/maintxt.php"
    val stringRequest = StringRequest(
        Request.Method.GET, url,
        { response ->
            result.value = response
        },
        { println("That didn't work!") })
    queue.add(stringRequest)
}
© www.soinside.com 2019 - 2024. All rights reserved.