【问题标题】:how to fill string arraylist with userinput EditText android eclipse如何用用户输入 EditText android eclipse 填充字符串数组列表
【发布时间】:2015-01-18 10:56:17
【问题描述】:

我是 android 编程和英语的初学者 :) !! 我想从用户那里获取名称并通过按下按钮显示用户随机输入的名称。 如何将用户输入名称存储在数组列表中? 至于我不知道他想输入多少个名字并且不显示一个名字两次,并且在显示名字后擦除数组列表中的那个名字。 坦克很多。

package farshid.mk.teststringarraylist;

import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;


public class StringArraylistActivity extends Activity {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        final ArrayList<String> inputs = new ArrayList<String>();

【问题讨论】:

  • 这就是你在代码上所做的一切吗?

标签: android eclipse random arraylist


【解决方案1】:

嗯,有很多方法可以做到这一点,但一种是:

  1. 创建一个EditText,一个允许用户输入的视图
  2. 创建一个Button,用户可以单击该Button 以表明他/她已完成在EditText 中输入名称
  3. 为按钮创建一个OnClickHanlder,以便您可以从EditText 获取文本,将其转换为StringEditText 返回一个Editable 对象),并将其添加到您的@987654331 @

    // add the string
    myArrayList.add(myEditText.getText().toString().trim());
    

要从List 中删除重复项,您需要将其转换为Set... google "java arraylist remove duplicates (First Link)

此外,在 Java 中,最好使用泛型:

// psuedocode
List inputs = new ArrayList

您可以通过多种方式在 Android 中向用户显示此文本列表,您需要自行研究。

当您完成名称后,您只需清除 ArrayList

这应该能让你继续前进 =)

【讨论】:

  • 您能否详细解释一下您刚才提到的 Java 泛化的好处?我真的很好奇这个..
  • 我认为最好将您发送到 Java 教程。那里有很好的教训。 docs.oracle.com/javase/tutorial/java/generics/index.html 它可能并不直接适用于这种情况...更多仅供参考 =)
【解决方案2】:

要实现这一点,您需要做很多事情:

  • 在布局的XML 中定义EditText
  • 通过调用findViewById(R.id.your_edittext_id)Activity 获取对其的引用。
  • 从该引用中,调用 getText().toString() 以从 EditText 获取值。
  • String 添加到您的 ArrayList

这基本上是您要实现的目标背后的主要思想。我可以给你代码,但也许最好你自己做(这样下次你需要这样做时,你会理解这个概念)。

祝你好运! :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-02
    • 2017-09-13
    • 2021-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-22
    • 1970-01-01
    相关资源
    最近更新 更多