如何在android中动态添加和删除视图?即使我关闭了应用程序,这也是 Store

发布于 2024-12-22 03:03:41 字数 750 浏览 3 评论 0原文

在我的应用程序中,我想通过编码(编程)添加和删除视图(例如 ButtonTextviewCheckbox )。

详细信息:

我有一个 EditText 和一个添加 Button。用户在 EditText 中输入任何内容,然后按添加按钮,然后将其添加到下面的 LinearLayout 中,并且用户是否单击他/她添加的 < code>Button 它将转到下一个 LinearLayout

到目前为止我取得了成功。

但是当用户单击第二个 LinearLayout 中的按钮时,它将返回第一个 Linearlayout 。我在这里遇到错误,我不知道我在哪里犯了错误。

我还面临着如何存储这一切的问题。就像用户添加 5 按钮并关闭应用程序一样,每当他/她返回应用程序时,我都需要他/她之前添加的任何内容。

这就是我所做的。 http://dynamicandroidview.blogspot .com/2011/12/how-to-add-view-in-android-by-coding.html

In my Application I want to Add and Remove View (like Button, or Textview, Checkbox ) by Coding (Programming ).

In Details:

I have One EditText and One Add Button. User Enter Anything in EditText and Press the Add Button then this one is added in bellow LinearLayout, and whether User click on his/her added Button it will going to next LinearLayout.

I get sucess upto this.

but when user click the button in second LinearLayout then it will come back on first Linearlayout. I am getting error Here, i don't know where I made a Mistake.

And I also facing Problem about how can I Store this all. Like User Add 5 Button and closed the application and whenever he/she came back to application I need whatever he/she previously added.

Here is what i done.
http://dynamicandroidview.blogspot.com/2011/12/how-to-add-view-in-android-by-coding.html

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

尝试创建一个至少包含 2 列的数据库表,在您的情况下,它将是 id 和 buttonText。
现在,当用户单击“添加”按钮时,它会将文本保存到数据库中,并在之前已创建的任何按钮或作为新按钮的下方动态创建该按钮。
现在,在您的 onCreate 方法中获取存储在数据库中的文本计数。类似于以下代码的内容:

DB getData = DB.getInstance();
getData.open(this);
ArrayList<TextHolder> getList = new ArrayList<TextHolder>();
getList = getData.getAllTextFromGeT();
getData.close();
x = genList.size();

这里 x 将是已存储在数据库中的元素的数量/计数。现在您可以使用另一个 int 说 i 并使用它for 循环中的 i 和 x 可以动态创建按钮。
在循环内,您可以执行类似以下操作来获取正在创建的所有按钮的文本:

TextHolder firstOne = getList.get(i);
String text = firstOne.getText();

您还需要带有 getters 和 setters 方法的类,以便将 DB 元素转换为对象。就像上面的代码 getText() 是我们的 getter 方法从数据库获取元素并将其返回到此处。
这里的文本将是按钮的文本。
因此,每次用户启动应用程序时,他都会看到他之前运行应用程序时创建的所有按钮,并且新添加的按钮将出现在现场,并且还将存储在数据库中以供将来检索。
请记住,我们只是存储按钮的文本并为其分配唯一的 id,这有助于我们创建按钮。希望这会有所帮助

Try to create a database table with minimum 2 columns in your case it will be id and buttonText.
Now when user clicks on the add button it will save text to the database and will create the button dynamically below any buttons which are already created before or as a new button.
Now in your onCreate method get the count of text thats stored in database.Some thing like the following code:

DB getData = DB.getInstance();
getData.open(this);
ArrayList<TextHolder> getList = new ArrayList<TextHolder>();
getList = getData.getAllTextFromGeT();
getData.close();
x = genList.size();

Here x will be the number/count of elements that are already stored in the database.Now you can another int say i and using this i and x in the for loop you can create buttons dynamically.
Inside the loop you can do something like the following to get text for all the buttons that are being created:

TextHolder firstOne = getList.get(i);
String text = firstOne.getText();

You will also need class with getters and setters method in order to convert DB elements into objects.Like in the above code getText() is our getter method which is getting elements from database and returning it here.
here text will be the text of the button.
So every-time users starts the application he will see all the buttons that he created when he ran the application before and newly added button will appear on the spot and also will be stored in the database for future retrieval.
Remember we are just storing text of the button and assigning it unique id which helps us to create the buttons.Hope this helps

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文