[英]Set id to EditText in Kotlin
我從WordPress的REST API (json)獲取一些數據。
利用這些數據,我正在創建一些EditText並將API的值添加到EditText中。 我想設置一個ID,以便可以將我創建的兩個EditText彼此使用(計算:價格*數量)
但是,當我嘗試添加ID時,Android Studio表示它需要為一個int (與我們在XML中所做的不同,這是通常的用法嗎?)。
val input = EditText(this)
input.id = id //dynamically equals 5
val test = findViewById<EditText>(5) //5 as ID is not working...
我在這方面想念什么?
這是您的示例:
val editText = EditText(this)
editText.id = 5
val test = findViewById<EditText>(5)
這是行不通的,因為“ 5”不是有效的ID,因為ID必須為十六進制int,並且必須與其他視圖的ID不同。 因此,實現目標的更好方法是執行以下操作:
val editText = EditText(this)
editText.id = View.generateViewId()
val test = findViewById<EditText>(editText.id)
根據View.generateViewId()
的文檔:
生成適合在setId(int)中使用的值。 該值不會與Aapt for R.id在生成時生成的ID值沖突。
但是我不知道為什么需要“測試” EditText,這樣您將擁有2個引用同一View的EditText對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.