我如何通过按一个按钮将变量day传递给apiInterface类?
片段FragJornadas,我想从这里将变量传递给@get in接口?
class FragJornadas : Fragment() {
var jornada = "1"
var dataList = ArrayList<TodasModel>()
lateinit var recyclerView: RecyclerView
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
// Inflate the layout for this fragment
val view = inflater.inflate(R.layout.jornadas_list, container, false)
val miTexto: TextView = view.findViewById(R.id.tv_Jornadas)
miTexto.text = (getString(R.string.num_jornada))
val numJor = intArrayOf(R.id.tv_01, R.id.tv_02, R.id.tv_03, R.id.tv_04, R.id.tv_05,
R.id.tv_06, R.id.tv_07, R.id.tv_08, R.id.tv_09, R.id.tv_10, R.id.tv_11, R.id.tv_12,
R.id.tv_13, R.id.tv_14, R.id.tv_15, R.id.tv_16, R.id.tv_17, R.id.tv_18, R.id.tv_19,
R.id.tv_20, R.id.tv_21, R.id.tv_22, R.id.tv_23, R.id.tv_24, R.id.tv_25, R.id.tv_26,
R.id.tv_27, R.id.tv_28, R.id.tv_29, R.id.tv_30)
val button = arrayOfNulls<Button>(numJor.size)
for(i in numJor.indices){
button[i] = view.findViewById(numJor[i]) as Button
val buttonValue = i+1
val buttonText = Integer.toString(buttonValue)
button[i]!!.setOnClickListener {
miTexto.text = getString(R.string.num_jornada) + " " + buttonText
jornada = buttonText
getData(jornada)
}
}
return view
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
val progressBar: ProgressBar = this.progressBar1
recyclerView = view.findViewById(R.id.recycler_view)
recyclerView.adapter= TodasAdapter(dataList,activity!!)
recyclerView.layoutManager=LinearLayoutManager(activity!!,LinearLayoutManager.VERTICAL,false)
Thread(Runnable {
activity!!.runOnUiThread {
progressBar.visibility = View.VISIBLE
}
try {
var i = 0
while(i < Int.MAX_VALUE){
i++
}
} catch (e: InterruptedException) {
e.printStackTrace()
}
activity!!.runOnUiThread {
progressBar.visibility = View.GONE
}
}).start()
getData(jornada)
}
private fun getData(jornada: String) {
val call: Call<List<TodasModel>> = ApiFederacion.getClient.getTodasJuvenil(jornada)
call.enqueue(object : Callback<List<TodasModel>> {
override fun onResponse(call: Call<List<TodasModel>>?, response: Response<List<TodasModel>>?) {
dataList.addAll(response!!.body()!!)
recyclerView.adapter!!.notifyDataSetChanged()
}
override fun onFailure(call: Call<List<TodasModel>>?, t: Throwable?) {
//progerssProgressDialog.dismiss()
}
})
}
TodaSadapter
class TodasAdapter(private var actList: List<TodasModel>, private val context: Context) : RecyclerView.Adapter<TodasAdapter.ViewHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
return ViewHolder(LayoutInflater.from(context).inflate(R.layout.actual_row, parent, false))
}
override fun getItemCount(): Int {
return actList.size
}
@SuppressLint("SetTextI18n", "SimpleDateFormat")
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
val dataModel= actList.get(position)
holder.itemView.setOnClickListener(){
Toast.makeText(context, dataModel.nomLocal, Toast.LENGTH_LONG).show()
}
val parser = SimpleDateFormat("dd/MM/yyyy") //Formato de fecha obtenida
val formatter = SimpleDateFormat("EE dd 'de' MMMM 'del 'yyyy \n" + "' a las '") //Formato a mostrar
val output = formatter.format(parser.parse(dataModel.fecha + "/2019"))
holder.tv_Fecha.text = output + dataModel.hora
//holder.tv_Fecha.text = dataModel.fecha + "\n" + dataModel.hora
holder.tv_NomLocal.text = dataModel.nomLocal
holder.tv_ResultadoL.text = dataModel.resulLocal
holder.tv_Estado.text = " - " + dataModel.estadoPartido + " - "
holder.tv_ResultadoV.text = dataModel.resulVisitante
holder.tv_NomVisitante.text = dataModel.nomVisitante
Picasso.get()
.load("https://ffcv.es/ncompeticiones/" + dataModel.escudoLocal)
.fit()
//.resize(150, 150)
.into(holder.imageEscLocal)
Picasso.get()
.load("https://ffcv.es/ncompeticiones/" + dataModel.escudoVisitante)
.fit()
.into(holder.imageEscVisi)
}
class ViewHolder(itemLayoutView: View) : RecyclerView.ViewHolder(itemLayoutView) {
var tv_Fecha:TextView
var tv_NomLocal:TextView
var tv_ResultadoL:TextView
var tv_Estado:TextView
var tv_ResultadoV:TextView
var tv_NomVisitante:TextView
var imageEscLocal: ImageView
var imageEscVisi: ImageView
init {
tv_Fecha = itemLayoutView.findViewById(R.id.tv_Fecha)
tv_NomLocal = itemLayoutView.findViewById(R.id.tv_Equipo_Local)
tv_ResultadoL = itemLayoutView.findViewById(R.id.tv_Result_Local)
tv_Estado = itemLayoutView.findViewById(R.id.tv_Estado)
tv_ResultadoV = itemLayoutView.findViewById(R.id.tv_Result_Visitante)
tv_NomVisitante = itemLayoutView.findViewById(R.id.tv_Equipo_Visitante)
imageEscLocal = itemLayoutView.findViewById(R.id.iv_Local) as ImageView
imageEscVisi = itemLayoutView.findViewById(R.id.iv_Visi) as ImageView
}
}
}
@GET("server.php?action=getResultados&cmp=328{jor}tmp=2018/2019") fun
getTodasJuvenil(
@Path("jor") jornada: String ): Call<List<TodasModel>>
我要获取的url是:
“server.php?action=getresultados&cmp=328&jor=1&tmp=2018/2019”
这是一个错误:
java.lang.IllegalArgumentException:URL查询字符串“action=getresultados&cmp=328{jor}&tmp=2018/2019”不能有replace block。对于动态查询参数
使用@path
时,您告诉reverfit在url的路径中替换该变量,但您希望在查询字符串中替换该变量。路径是域之后和查询字符串之前的位-在您的例子中,可能是server.php
和前面的一些位,如果没有看到完整的URL我就无法说出来。
若要将参数添加到查询字符串中,您希望使用@query
,而不希望在@get
批注中的查询字符串中指定该参数。因此您可以将内容更改为:
@GET("server.php?action=getResultados&cmp=328&tmp=2018/2019") fun
getTodasJuvenil(
@Query("jor") jornada: String ): Call<List<TodasModel>>)
您已从查询字符串中删除{jor}
并将@path
替换为@query
。
现在,reverfit应该添加一个具有所需jornada
的查询参数。
我有一个String,newNumber=106,nn=3和差异=3。 输出: 我想修改这个字符串,使输出变成,然后用这个新字符串我想再次修改它,使它变成,基本上我只需要替换新的数字,它是106,并且一直变为11,正如你所看到的,我试图只修改newNumber并用另一个替换它,同时保持整个字符串不变,我只是替换并添加它,这是如何实现的?输出应该是这样的,输出: 我在用步骤求解一个方程,公式无关紧要
修改字符串 到目前为止,我们简单地搜索了一个静态字符串。正则表达式通常也用不同的方式,通过下面的 RegexObject 方法,来修改字符串。 方法/属性 作用 split() 将字符串在 RE 匹配的地方分片并生成一个列表, sub() 找到 RE 匹配的所有子串,并将其用一个不同的字符串替换 subn() 与 sub() 相同,但返回新的字符串和替换次数
问题内容: 我正在尝试通过使用JSON格式的字符串初始化Javascript变量来加载数据表。如果我声明: 那么我的表将正确加载该行。 我尝试在脚本之前初始化Java字符串,然后将该对象传递给Javascript变量,如下所示: 我的表无法识别这一点,并且在尝试以这种方式传递行时无法加载该行。如何正确地将Java字符串传递给Javascript,以便我的表能够加载数据? 问题答案: 尝试使用引号。
从java中字符串的值创建对现有对象的引用 在我的项目中,有很多按钮(目前大约70个);每个按钮都会在数据库的jlabel中提出一个问题。现在,根据用户的选择,每个按钮(swings的jButton)将被分配颜色,这取决于用户是否想查看问题,或者他是否标记了问题的答案。 一种方法是为每个jbutton的actionperformed编码,并在每个jbutton中使用if-else来获得确切的颜色,
问题内容: 我正在将ajax发布到webmethod上,我可以在客户端(通过Firebug)看到请求的状态为200,但未达到我的webmethod中的停止点(webmethod的第一行)。json参数一切正常,但是通过反序列化json的方式,我不得不将其更改为字符串。 js: aspx: 问题答案: 您在jQuery JSON帖子中缺少内容类型: 请参阅本文。当我遇到类似的问题时,它对我很有帮助:
本文向大家介绍C++ 修改字符串文字,包括了C++ 修改字符串文字的使用技巧和注意事项,需要的朋友参考一下 示例 C ++ 11 "hello world" 是字符串文字,因此对其进行修改会产生未定义的行为。 str上面示例中的初始化在C ++ 03中已正式弃用(计划从该标准的将来版本中删除)。2003年之前,许多编译器可能对此发出警告(例如,可疑转换)。2003年之后,编译器通常会警告不要使用转