繁体   English   中英

显示ArrayList到TextView

[英]Display ArrayList to TextView

我正在尝试做一些简单的事情:将ArrayList显示为TextView。 我尝试使用无法成功完成此操作的方法。 还是我应该使用ListView而不是TextView?

无论如何,这里是代码。 我希望有人能帮帮忙。

public class MainActivity extends Activity {

    Button aButton; // Global Scope
    TextView text2;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.new_layout); 

        aButton = (Button) this.findViewById(R.id.button1);
        aButton.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                ArrayList<String> list = new ArrayList<String>();

                list.add("Books");
                list.add("Newspapers");
                list.add("Magazines");

                for (int i = 0; i < list.size(); i++) {
                    //System.out.println(list.get(i));

                    Log.i("Results", list.get(i));
                    text2.setText(text2.getText());
                }
            }
        });
    }

您没有更改TexView的文本:

text2.setText(text2.getText());

您宁愿想到:

text2.setText(list.get(i));

最终:

text2.setText((text2.getText() != null ? text2.getText() : "") + list.get(i));

尝试这个 :

aButton.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        ArrayList<String> list = new ArrayList<String>();

        list.add("Books");
        list.add("Newspapers");
        list.add("Magazines");
        String listString = "";

        for (String s : list) {
            listString += s + " ";
        }
        text2.setText(listString);
    }
});

你的问题在这里

text2.setText(text2.getText())

工作代码将是:

public class MainActivity extends Activity {

Button aButton; // Global Scope
TextView text2;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.new_layout); 

    aButton = (Button) this.findViewById(R.id.button1);
    aButton.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            ArrayList<String> list = new ArrayList<String>();

            list.add("Books");
            list.add("Newspapers");
            list.add("Magazines");

            for (int i = 0; i < list.size(); i++) {
                //System.out.println(list.get(i));

                Log.i("Results", list.get(i));
                text2.setText(list.get(i));
            }
        }
    });
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM