我想在我的应用程序中动态创建按钮。需要根据从数据库中获取的项目创建按钮。实现这一目标的最佳方法是什么。我应该选择网格布局还是线性布局。我的布局很简单,每行最多 3 个按钮。第一行完成后,按钮应放置在第二行。
我扫描了很多类似的问题(一些有网格布局,另一些使用线性布局),但无法确定实现此问题的最佳方法。
我是 android 应用程序的新手,所以任何代码片段都会非常有帮助。如果有人觉得这是一个重复的问题,我深表歉意(我在发布之前进行了很多搜索,但没有找到要使用的布局的适当答案。)
谢谢。
我想在我的应用程序中动态创建按钮。需要根据从数据库中获取的项目创建按钮。实现这一目标的最佳方法是什么。我应该选择网格布局还是线性布局。我的布局很简单,每行最多 3 个按钮。第一行完成后,按钮应放置在第二行。
我扫描了很多类似的问题(一些有网格布局,另一些使用线性布局),但无法确定实现此问题的最佳方法。
我是 android 应用程序的新手,所以任何代码片段都会非常有帮助。如果有人觉得这是一个重复的问题,我深表歉意(我在发布之前进行了很多搜索,但没有找到要使用的布局的适当答案。)
谢谢。
请尝试使用与以下代码相同的 gridView。
// in xml write this code
<GridView
android:id="@+id/calendar"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:numColumns="3" />
// grid adapter
public class GridAdapter extends BaseAdapter {
private final Context _context;
private final List<String> list;
public GridAdapter(Context context, ArrayList<String> list) {
super();
this._context = context;
this.list = list;
}
public String getItem(int position) {
return list.get(position);
}
@Override
public int getCount() {
return list.size();
}
public View getView(int position, View convertView, ViewGroup parent) {
Button button = new Button(_context);
button.setText("button" + list.get(position));
return button;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
}
/// in oncreate
gridView.setAdapter(new GridAdapter(getApplicationContext(),list);