如何在列表视图中显示整数?

How can I show the integer in listview?

我想在列表视图中显示 for 循环编号,但它不起作用。 App's Layout

public class MainActivity extends AppCompatActivity {

    private ListView marksixlist;
    private Button mRandombtn, mCleanbtn;
    private TextView mText;
    private ArrayList<Integer> marksixnum = new ArrayList<Integer>();
    private ArrayAdapter arrayAdapter;

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

        marksixlist = (ListView) findViewById(R.id.listview1);

        mRandombtn = (Button) findViewById(R.id.randombtn);
        mCleanbtn = (Button) findViewById(R.id.cleanbtn);
        mText = (TextView) findViewById(R.id.items);

        mRandombtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                for (int j = 1; j <= 6; j++) {
                    int random = (int) (Math.random()* 49+1);
                        marksixnum.add(random);
                        Collections.shuffle(marksixnum);
                }
            }
        });

        arrayAdapter = new ArrayAdapter<Integer>(this, R.layout.listitempage, marksixnum);
        marksixlist.setAdapter(arrayAdapter);
        Log.d("aaa", "The markssix is - " + marksixnum);
    }
}

一旦生成随机数并打乱它们,然后在 for 循环结束时将 arrayAdapter 再次添加到列表视图 marksixlist,它会起到很好的作用。

我在生成随机数之前还清除了 ArrayList marksixnum,这样您的列表就不会继续增长。

它是可选的,如果你需要最后点击元素然后删除 marksixnum.clear()

mRandombtn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // Do this if you do not want
        // numbers from last click
        marksixnum.clear();
        for (int j = 1; j <= 6; j++) {
            int random = (int) (Math.random()* 49+1);
            marksixnum.add(random);
            Collections.shuffle(marksixnum);
        }
        // add arrayAdapter to listview
        marksixlist.setAdapter(arrayAdapter);
    }
});