我需要更改的edittext textview,为空

时间:2019-07-08 01:04:09

标签: kotlin

我的问题是edittext和textview不会更改文本。我尝试了不同的方法,但没有解决。尝试在for循环中为textview设置文本,但是不起作用。框为空。你能帮我吗

    val edit = findViewById<EditText>(R.id.editBroj)
    val webView = findViewById<WebView>(R.id.web)
    val click=findViewById<Button>(R.id.pokreniB)
    val textView=findViewById<TextView>(R.id.textView)

    val si=edit.text.toString()

    textView.text= Editable.Factory.getInstance().newEditable(si)
    if (si!="") {
        click.setOnClickListener() {

            edit.text= Editable.Factory.getInstance().newEditable(null)
            val po: Int = Integer.parseInt(edit.getText().toString())

            for (i in 1..po) {
                val s:String=i.toString()
                Thread.sleep(1_000)
            }
        }
    }

}

2 个答案:

答案 0 :(得分:0)

如果我没有误解您想做什么,您应该使用TextWatcher。这是方法;

editText.addTextChangedListener(object : TextWatcher {

    override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {}

    override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {}

    override fun afterTextChanged(s: Editable) {
        textView.text = s.toString()
    }
})

答案 1 :(得分:0)

我有两个线性布局。首先是EditText,Button和TextView。在第二个WebView中。 Edittext用于重复次数,textview用于复数。 我的第一个代码是

 override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    val edit = findViewById<EditText>(R.id.editBroj)
    val webView = findViewById<WebView>(R.id.web)
    val click=findViewById<Button>(R.id.pokreniB)
    val textView=findViewById<TextView>(R.id.textView)

    if (edit.text.toString().isNotEmpty()) {

        click.setOnClickListener() {

            edit.text= Editable.Factory.getInstance().newEditable(null)
            var po: Int = Integer.parseInt(edit.getText().toString())

            for (i in po downTo 0  step 1) {

                textView.setText(i.toString())
                Thread.sleep(1_000)

                //webView.reload()
            }
            edit.text= Editable.Factory.getInstance().newEditable("number of repetition")
        }
    }
}

}

应用正常工作,但edittext和textview不变。我不明白为什么