所以我有一个android项目,使用JSON从php获取数据。 我希望如果我收到一个数据,将自动创建两个按钮,这是接受和拒绝,如果我收到另一个数据,将创建另一组两个按钮。我想在循环中创建按钮,但我不知道它是否可能在android中?这可能吗? 感谢
答案 0 :(得分:3)
将适当的导入添加到您的活动:
import android.widget.Button;
然后在onCreate方法中创建一个新的按钮对象:
Button myButton = new Button(this);
myButton.setText("Press Me");
最后将按钮添加到布局:
LinearLayout layout = (LinearLayout) findViewById(R.id.layout1);
layout.addView(myButton);
要在循环中动态添加按钮并向其添加侦听器,您可以这样做:
for(int i=0;i<nob;i++) {
Button btn = new Button(this);
btn.setId(i+1);
btn.setText("Button"+(i+1));
btn.setLayoutParams(lprams);
final int index = i;
btn.setOnClickListener(new OnClickListener() {
void onClick(View v) {
Log.i("TAG", "The index is" + index);
}
});
dynamicview.addView(btn);
}
答案 1 :(得分:0)
是的,这是可能的。上下文可以是this
或getActivity()
,具体取决于您的来电地点。
Button button = new Button(context);