gpt4 book ai didi

java - 如何在android studio中单击时使复选框可编辑

转载 作者:行者123 更新时间:2023-11-29 02:23:13 25 4
gpt4 key购买 nike

我试图在 android studio 中制作一个带有复选框的待办事项列表,我的想法是每次按下按钮时都能够将复选框添加到线性布局中。这非常简单,但我希望能够在我创建它后单击它时更改复选框文本。

我试图让文本框没有文本,只是在它旁边放置一个纯文本,但我还没有找到将它们放在线性布局的同一行的方法。纯文本仅出现在下面的行中。我想知道是否有任何方法可以制作自定义组件,在单击文本时使复选框文本可编辑,并在单击复选框本身时选中复选框,我可以将其放置在线性布局中。

这是我为向线性布局添加另一个复选框而完成的代码:

    public void click(View v)
{
LinearLayout.LayoutParams lparams = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
CheckBox cb=new CheckBox(this);
cb.setLayoutParams(lparams);
cb.setText(t.getText());
this.ll.addView(cb);
}

最佳答案

检查复选框是什么:Checkbox source

现在您知道您有一个“CompoundButton”,如果您查看 source

如果您查看源代码,这是一个 TextView source

EditText,用于编辑文本,如果勾选 source,它是一个 TextView

因此,它的父级是一个 TextView,在您的自定义组件中,您必须将 EditText 添加的功能和值组合到您的 CheckBox 中。如果您有时间并且不懒惰,您肯定可以这样做,只需扩展 CheckBox 并添加事件和处理。

BAHMAN 提供的解决方案既快速又简单(但对我来说不够优雅),如果你想要快速的结果,你可以执行该解决方案或基于该解决方案:

在 .xml 布局中声明一个名为“container”的 View 。在您的代码(运行时)中,首先添加复选框。在 Click 事件上删除复选框(如果您没有在 .xml 中添加,但可以在代码中添加)并添加一个编辑文本,您可以在其中收听完成编辑事件。然后删除编辑文本并放回复选框。在这种情况下,您没有将组件和监听器加倍。

因为它是一个TODO列表,可以有很多复选框,我会选择我提供的最后一个解决方案。如果你做一个昂贵的商业产品,而不是我提供的第一个解决方案。

关于java - 如何在android studio中单击时使复选框可编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53876856/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com