使用 Kotlin 在 android 中动态创建控件
Dynamically create controls in android using Kotlin
使用java,动态创建一个控件,我们使用类似
TextView textview=new TextView(getApplicationContext());
如何在 Kotlin 中完成相同的操作? var textview = TextView
不起作用,var textview as TextView
也不起作用
不幸的是,android 甚至还没有遇到任何好的 kotlin 教程。
更新 - 实际上我正在尝试创建具有自定义布局的动态列表视图。
您可以通过调用 TextView
的构造函数,像这样:
var textview = TextView(this) // "this" being the Activity
参见官方文档creating instances。
要动态创建一个textview,你必须调用textview的构造函数并将其存储在一个变量中,如下所示:
var myTextview = TextView(this);
您必须在 activity 或片段中编写此代码,因为 this
将代表 activity 或片段。
然后使用 textview 的所有方法,如:setText();
myTextview.setText("Hello");
您还可以使用
var myTextView: TextView? = TextView(this)
将文本分配给 TextView
myTextView?.setText("Hello")
但是 myTextView 变量不能为空。
使用java,动态创建一个控件,我们使用类似
TextView textview=new TextView(getApplicationContext());
如何在 Kotlin 中完成相同的操作? var textview = TextView
不起作用,var textview as TextView
不幸的是,android 甚至还没有遇到任何好的 kotlin 教程。
更新 - 实际上我正在尝试创建具有自定义布局的动态列表视图。
您可以通过调用 TextView
的构造函数,像这样:
var textview = TextView(this) // "this" being the Activity
参见官方文档creating instances。
要动态创建一个textview,你必须调用textview的构造函数并将其存储在一个变量中,如下所示:
var myTextview = TextView(this);
您必须在 activity 或片段中编写此代码,因为 this
将代表 activity 或片段。
然后使用 textview 的所有方法,如:setText();
myTextview.setText("Hello");
您还可以使用
var myTextView: TextView? = TextView(this)
将文本分配给 TextView
myTextView?.setText("Hello")
但是 myTextView 变量不能为空。