我试图让我的应用为我的JSON中的每个商品类别创建一个按钮,然后在应用中远程设置按钮图像和标题。我该如何做才能从数据库中添加一个新类别,并在应用程序中为该类别创建一个带有图像和标题的新按钮?
非常感谢您的帮助。 不幸的是,目前我没有太多代码可以显示。
答案 0 :(得分:0)
您只需在xml中采用水平/垂直线性布局即可充当容器。将该LinearLayout放入水平或垂直ScrollView中,如下所示。
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/linear_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" />
</HorizontalScrollView>
在您的活动中:
for (int i = 0; i < yourArray.length(); i++) {
Button btn = new Button(this);
btn.setId(i);
btn.setTag(i);
btn.setText("Button " + (i+1));
btn.setCompoundDrawablesWithIntrinsicBounds(getResources().getDrawable(R.drawable.ic_notifications_black_24dp), null, null, null);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.d("BTN", view.getTag().toString());
}
});
linearLayout.addView(btn);
}
类似地,您可以在LinearLayout中水平或垂直添加所需的任何视图。看看所附的屏幕截图。