Java 通过编程方式向网格布局添加按钮
我试图通过编程在Android的GridLayout中添加一个按钮。这是我正在使用的代码:Java 通过编程方式向网格布局添加按钮,java,android,android-layout,android-studio,Java,Android,Android Layout,Android Studio,我试图通过编程在Android的GridLayout中添加一个按钮。这是我正在使用的代码: public class GridScrollTest extends AppCompatActivity { private GridLayout gridLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setConte
public class GridScrollTest extends AppCompatActivity {
private GridLayout gridLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_grid_scroll_test);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
CreateNewItem();
Snackbar.make(view, "Added a new button", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
}
private void CreateNewItem(){
gridLayout = (GridLayout)findViewById(R.id.gridLayout);
Button newButton = new Button(this);
newButton.getLayoutParams().width = 100;
newButton.getLayoutParams().height = 140;
newButton.setGravity(Gravity.CENTER_VERTICAL | Gravity.FILL_VERTICAL);
newButton.requestLayout();
gridLayout.addView(newButton);
}
目前代码什么也不做。它不会崩溃,但也不会添加按钮。“添加了一个新按钮”快捷键会被触发
这就是我们的目标:
一个新按钮将添加到上一个按钮的旁边,之后的按钮将添加到下一行。所有按钮的大小都相同(稍后它们将是图像按钮)
如果有任何帮助,我们将不胜感激。为什么不尝试使用网格布局的“回收器视图”?您只需将其添加到列表并通知适配器即可。谢谢,这非常有效!为什么不尝试使用网格布局的回收器视图?您只需将其添加到列表并通知适配器即可。谢谢,这非常有效!