class SetTextActivity : AppCompatActivity() {
lateinit var binding: ActivitySetTextBinding
override fun onCreate(savedInstanceState: Bundle?) {
...
/**
* editTextOutput은 editText의 id이다.
* input은 String이다.
*/
editTextOutput.text = input
}
}
위의 방법으로 EditText의 text를 설정하려는 데 아래와 같이 에러가 발생했다.
Type mismatch.
Required: Editable!
Found: String
Editable type이 들어가야 하는데, String을 넣어서 타입이 맞지 않았다.
Editable
This is the interface for text whose content and markup can be changed (as opposed to immutable text like Strings)
-> 내용이나 마크업이 변경될 수 있는 텍스트(String과 반대)를 위한 인터페이스
T!
T 또는 T?를 의미한다. 'null이 될 수도~ 안 될 수도~'
즉, T타입의 널 가능성에 대해 아무 정보도 없다는 뜻이다.
editTextOutput.setText(input)
editTextOutput2.text = Editable.Factory.getInstance().newEditable(input)