Android 通过数组分配动态生成具有不同操作的按钮

Android 通过数组分配动态生成具有不同操作的按钮,android,Android,我希望创建的每个textView运行时在toast中显示不同的值,但它只显示数组中的最后一个值 response = (SoapPrimitive) envelope.getResponse(); News = response.toString().split("`"); LinearLayout Newslayout = (LinearLayout) findViewById(R.id.newslayout); while (

我希望创建的每个textView运行时在toast中显示不同的值,但它只显示数组中的最后一个值

        response = (SoapPrimitive) envelope.getResponse();
        News = response.toString().split("`");

        LinearLayout Newslayout = (LinearLayout) findViewById(R.id.newslayout);
        while (i < News.length) {

            TextView title = new TextView(this);
            title.setText(News[i]);
            Newslayout.addView(title);
            TextView seeMore = new TextView(this);
            seeMore.setText("See More...");
            seeMore.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Toast.makeText(getApplicationContext(), News[i], Toast.LENGTH_LONG).show();

                }
            });
            Newslayout.addView(seeMore);
            TextView title1 = new TextView(this);
            title1.setText("");
            Newslayout.addView(title1);
            i++;

        }
    }

我认为这是因为seeMore显示了新闻的价值[I],我总是等于News.length-1,所以你可以做类似的事情

seeMore.setId(i);
并将代码更改为

Toast.makeText(getApplicationContext(), News[v.getId()], Toast.LENGTH_LONG).show();
祝你好运