ボタンをクリックするたびに、同じビューをプログラムでgridLayoutに追加しています。追加したビューにマージンを設定したいのですが、どうすればいいですか?それはGirdLayout.LayoutParamsし、それを受け入れていないので、私はLinearLayout.LayoutParamsとしてLayoutParamsを設定します。プログラムで追加されたビューにマージンを追加する
gridLayout= (GridLayout)findViewById(R.id.gamehistory);
Button b = (Button)findViewById(R.id.Button01);
layoutParams = new LinearLayout.LayoutParams
(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
b.setOnClickListener(new View.OnClickListener(){
public void onClick(View v) {
Button theButton = new Button(MainActivity.this);
TextView theText = new TextView(MainActivity.this);
theText.setGravity(Gravity.CENTER_HORIZONTAL);
LinearLayout theLayout = new LinearLayout(MainActivity.this);
theLayout.setOrientation(LinearLayout.VERTICAL);
theLayout.setBackgroundColor(Color.parseColor("#8BAAC3"));
theLayout.setId(++i);
theText.setText(theLayout.getId() + "");
theLayout.addView(theButton);
theLayout.addView(theText);
gridLayout.addView(theLayout, layoutParams);
}
});
EDIT: 私が試したlayoutParams.setMargin(10,10,10,10)
ここでtheLayout.setPadding(10,10,10,10)
は、私はビューを追加している方法ですそれには影響していないようです。
私が必要とするのは、ボタン(theLayout)で継続的に追加している線形レイアウトに余白を追加する方法です。
あなたはビューに余白を追加しようとしていますか? LinearLayout? –
実際、私は混乱しています。変数名がlinearLayoutのGridLayoutがあります。あなたが達成しようとしていることについて具体的にしてください。 –
さて、私は編集しました –