我可以在不使用 xml 文件的情况下在列表视图中添加视图吗

Posted

技术标签:

【中文标题】我可以在不使用 xml 文件的情况下在列表视图中添加视图吗【英文标题】:Can I add a view in list view with out using xml file 【发布时间】:2021-02-04 15:57:12 【问题描述】:

我正在学习 android,我想知道是否可以在不使用 xml 文件作为视图模板的情况下添加视图 , 任何帮助示例

【问题讨论】:

请添加更多详细信息。您的问题不清楚。 【参考方案1】:

您可以使用 ViewGroup 类提供的addView() 方法以编程方式将视图添加到布局。 首先,您应该使用findViewById<>() 引用您的布局。 然后你必须创建一个视图来添加:

val listView = findViewById<LinearLayout>(R.id.list_view)
        val view = Button(this)
        view.layoutParams = LinearLayout.LayoutParams(
            LinearLayout.LayoutParams.WRAP_CONTENT,
            LinearLayout.LayoutParams.WRAP_CONTENT)
        listView.addView(view)

在上面我添加了一个带有 list_view id 的线性布局按钮。 布局参数是对应的宽高。

【讨论】:

【参考方案2】:

是的,只需使用.addView(),例如,如果您有一个想要添加 TextView 的 ListView,您可以这样做:

ListView yourListView = (ListView) activity.findViewById(R.id.yourListView);
TextView newTextView = new TextView(activity);
newTextView.setText("foobar");
yourListView.addView(newTextView);

activity 应该是 this 如果你在一个活动中,或者requireActivity() 如果你在一个片段中。 您可以设置这个新 TextView(或您要添加的任何 View)的许多其他属性,只需尝试在其后输入 .set,然后查看建议。

【讨论】:

以上是关于我可以在不使用 xml 文件的情况下在列表视图中添加视图吗的主要内容,如果未能解决你的问题,请参考以下文章

我可以在不使用 Unity 的情况下在 Android VR 视图中添加像 youtube 这样的凝视控制功能吗?

如何在不使用对话框的情况下在操作栏上方显示视图?

如何在不使用 Api 的情况下在 uitableview 中进行分页?

是否可以在不使用继承的情况下在viewDidAppear上调用某些代码

如何在不传递引用的情况下在 Python 中使用 SyncManager 跨进程共享列表

如何在不使用某些框架的情况下在 php 中进行 MVC