Android 10x10表未正确创建
我想创建10x10网格,所以我使用和 我以编程方式创建我的tableView,如下所示:Android 10x10表未正确创建,android,android-layout,kotlin,android-tablelayout,Android,Android Layout,Kotlin,Android Tablelayout,我想创建10x10网格,所以我使用和 我以编程方式创建我的tableView,如下所示: override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val table = TableLayout(this) for (i in 0..9) { val r
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val table = TableLayout(this)
for (i in 0..9) {
val row = TableRow(this)
for (j in 0..9) {
val cell = EditText(this)
cell.setText("test")
row.addView(cell)
}
table.addView(row)
}
setContentView(table)
}
问题:这将起作用,但将替换此活动的布局(可能是因为我正在调用setContentView(table)
)
如何将我的表格视图放在表格布局中(它是活动布局中的一个视图),而不是当前的结果?
为了更好地理解,我当前的代码给出了以下结果(如上所述): 您应该先签出 无论如何。将您的
表格布局
放入布局,使用findViewById()
并使用它,而不是创建新的布局
val table = findViewById<TableLayout>(R.id.tablelayout)
for (i in 0..9) {
// ... Same code
}
val table=findviewbyd(R.id.tablelayout)
对于(0..9中的i){
//…相同的代码
}
有趣的是,我在问问题之前就这么做了,结果出现了一个奇怪的无关错误。现在我简单地使用了使缓存无效/重新启动,它就起了作用(正如您的答案提到的使用findViewById()
)。我会在10分钟内接受。