SecondActivity(Button display) No need to create Activity Create Java file and add the file in manifest
GridLayout gridLayout=new GridLayout(this);
ViewGroup.LayoutParams layoutParams=new ViewGroup.LayoutParams(GridLayout.LayoutParams.MATCH_PARENT,GridLayout.LayoutParams.WRAP_CONTENT);
gridLayout.setLayoutParams(layoutParams);
gridLayout.setColumnCount(2);
setContentView(gridLayout);
if(getIntent()!=null){
int buttoncount=getIntent().getIntExtra("value",0);
for(int i=0;i<buttoncount;i++){
Button button=new Button(ButtonActivity.this);
button.setText("Button"+i);
button.setId(1000+i);
button.setBackgroundResource(R.drawable.button_back);
button.setPadding(10,10,10,10);
gridLayout.addView(button);
}
}
Xml file for background (create this file inside of drawable)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#66ff0000" />
<size
android:width="120dp"
android:height="120dp"/>
</shape>
Any confusion then use this is full code of Java file
public class ButtonActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
GridLayout gridLayout=new GridLayout(this);
ViewGroup.LayoutParams layoutParams=new ViewGroup.LayoutParams(GridLayout.LayoutParams.MATCH_PARENT,GridLayout.LayoutParams.WRAP_CONTENT);
gridLayout.setLayoutParams(layoutParams);
gridLayout.setColumnCount(2);
setContentView(gridLayout);
if(getIntent()!=null){
int buttoncount=getIntent().getIntExtra("value",0);
for(int i=0;i<buttoncount;i++){
Button button=new Button(ButtonActivity.this);
button.setText("Button"+i);
button.setId(1000+i);
button.setBackgroundResource(R.drawable.button_back);
button.setPadding(10,10,10,10);
gridLayout.addView(button);
}
}
}
}
Manifest file
<activity android:name=".ButtonActivity"></activity>
and use the background file above...