我正在尝试通过动态创建一个按钮并且我也创建了。现在我想编写点击事件的功能所以我需要按钮的ID。我不知道如何动态创建按钮的ID。指导我 提前致谢 这里是我的编码
ScrollView sv = new ScrollView(this);
LinearLayout ll = new LinearLayout(this);
ll.setOrientation(LinearLayout.HORIZONTAL);
sv.addView(ll);
Button main=new Button(this);
CharSequence value="Main +";
main.setText(value);
ll.addView(main);
}
this.setContentView(sv);
}
最佳答案
你可以设置任何控件的id
btn.setId(integer value) at runtime.
如果你不想设置id那么就没有问题
此外,当您创建新 View 时,您还必须设置其布局参数(高度、宽度)
例如
btn.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
所以整个过程是这样的
Button btn = new Button(Context);
btn.setId(1);
btn.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
btn.setText("Dynamic button");
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(v.getContext(),"Dynamic button is clicked", 3000).show();
}
});
关于java - 如何在 Android 中通过动态创建为按钮提供 id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7213567/