-2
for(int i=0;i<n;i++)
        {
        Button btn = new Button(this); 
        btn.setLayoutParams(new LinearLayout.LayoutParams(150, 45));
        btn.setId(i);
        linearLayout.addView(btn); 
        try {
           btn.setOnClickListener(new OnClickListener() {

                public void onClick(View v){
                    Intent userTry = new Intent(Ed.this,Op.class);
                    startActivity(userTry);
                }
            });
        } catch (ActivityNotFoundException anfe) {
            Log.e("onCreate", "Activity Not Found", anfe);
        }

Android:我想动态创建按钮,以便将它的 id 传递给它去的下一个活动。但我收到一个错误。谢谢您的帮助

4

1 回答 1

0

您必须传递带有 id 的 Bundle:

Intent userTry = new Intent(Ed.this,Op.class);

Bundle extras = new Bundle();
extras.putInt("EXTRA_PARAM1", yourParam);
userTry.putExtras(extras);

startActivity(userTry);

此外,您以错误的方式设置 id。方法 setId (int) 需要一个在您的资源中注册的 id(例如,R.id.itemId)

于 2012-07-15T07:57:43.083 回答