Java 如何在不创建布局资源文件的情况下为微调器控件的文本添加空间?
我想在文本之间添加空格,而不创建设计资源文件。 我怎么做Java 如何在不创建布局资源文件的情况下为微调器控件的文本添加空间?,java,android,android-studio,kotlin,intellij-idea,Java,Android,Android Studio,Kotlin,Intellij Idea,我想在文本之间添加空格,而不创建设计资源文件。 我怎么做 val lista=arrayOf(“ENERO”、“MARZO”、“MAYO”、“ABRIL”、“JUNIO”、“ENERO”、“MARZO”、“MAYO”、“ABRIL”、“JUNIO”) val Adapter1=ArrayAdapter(这个,android.R.layout.simple\u微调器\u项目,lista) spinner.adapter=Adapter1 bt_calcular.setOnClickListene
val lista=arrayOf(“ENERO”、“MARZO”、“MAYO”、“ABRIL”、“JUNIO”、“ENERO”、“MARZO”、“MAYO”、“ABRIL”、“JUNIO”)
val Adapter1=ArrayAdapter(这个,android.R.layout.simple\u微调器\u项目,lista)
spinner.adapter=Adapter1
bt_calcular.setOnClickListener{
val v1=tv_valor1.text.toString().toInt()
val v2=tv_valor2.text.toString().toInt()
var resultado=0
何时(spinner.selectedItem.toString()){
“Suma”->resultado=v1+v2
“Resta”->resultado=v1-v2
“被乘数”->resultado=v1*v2
“Dividir”->{
如果(v2!=0){
resultado=v1/v2
}
否则{
tv_valor2.error=“输入值不等于0”
}
}
}
tv_resultado.text=resultado.toString()
}
使用下面的布局
android.R.layout.simple\u微调器\u下拉菜单\u项
反而
android.R.layout.simple\u微调器\u项目
如果您引用的是下拉列表中的行,则该行由
SpinnerAdapter
控制,而不是
本身。我是初学者,但我该如何操作。您的SpinnerAdapter
实现没有显示。在Java或Kotlin代码的某个地方,您正在创建一个ArrayAdapter
或一些其他SpinnerAdapter
实现。您正在教适配器如何创建行,无论是通过扩展某些布局还是直接在Java/Kotlin代码中创建小部件。你需要修改它来增加更多的空间,就像你需要修改它一样,如果你想改变字体大小,单词的颜色等等。我的代码已经完成了,请举个例子,到目前为止,最好的解决方案是创建你自己的布局资源来描述你希望这些行的外观,然后使用该布局资源,而不是android.R.layout.simple\u spinner\u项。您表示不想这样做。我不知道为什么。我没有任何创建以任何其他方式创建行的ArrayAdapter
的示例。很抱歉如果安卓系统的布局不起作用,根据需要定制一个布局。这是唯一的选择。
val lista = arrayOf("ENERO", "MARZO", "MAYO", "ABRIL","JUNIO","ENERO", "MARZO", "MAYO", "ABRIL","JUNIO" )
val adaptador1 = ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, lista)
spinner.adapter = adaptador1
bt_calcular.setOnClickListener {
val v1 = tv_valor1.text.toString().toInt()
val v2 = tv_valor2.text.toString().toInt()
var resultado = 0
when (spinner.selectedItem.toString()) {
"Suma" -> resultado = v1 + v2
"Resta" -> resultado = v1 - v2
"Multiplicar" -> resultado = v1 * v2
"Dividir" -> {
if (v2 !=0){
resultado = v1/v2
}
else{
tv_valor2.error = "Ingrese un valor diferete a 0"
}
}
}
tv_resultado.text = resultado.toString()
}