私は新しいxamarinベースのプロジェクトに取り組んでいます。私はコード内で動的に要素数を管理する必要がありますが、要素の重みを設定することに問題があります。レイアウトの例としては、次のものがあります。 Xamarinで設定した要素の重さはC#
最初の行はaxmlで作成されています。他の行は、コードを使って新しい項目を追加した結果ですが、C#コードで作成したマークアップはaxml行のマークアップと同じです。ここで
は、C#のコードです:私は間違っ
LinearLayout contentView = FindViewById<LinearLayout>(Resource.Id.ATMListContentLayout);
foreach (var item in BitcoinQeueryInfo.ATMList.OrderBy(x => x.id))
{
LinearLayout row = new LinearLayout(this)
{
WeightSum = 100,
Orientation = Orientation.Horizontal
};
LinearLayout.LayoutParams paramsRow = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MatchParent, LinearLayout.LayoutParams.WrapContent);
row.LayoutParameters = paramsRow;
TextView text = new TextView(this)
{
Text = item.id + " " + item.address,
TextSize = 20,
};
text.SetTextColor(Color.ParseColor("#000000"));
LinearLayout.LayoutParams paramsText = new LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.WrapContent);
paramsText.Weight = 70;
text.LayoutParameters = paramsText;
Button button = new Button(this)
{
Text = "Sell BTC",
TextSize = 20
};
LinearLayout.LayoutParams paramsBtn = new LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.WrapContent);
paramsBtn.Weight = 30;
text.LayoutParameters = paramsBtn;
button.SetBackgroundResource(Resource.Color.orange);
button.SetTextColor(Color.ParseColor("#000000"));
row.AddView(text);
row.AddView(button);
contentView.AddView(row);
button.Click += delegate
{
BitcoinQeueryInfo.selectedATMId = item.id;
var newInstance = new Intent(this, typeof(BTCAmountScreen));
StartActivity(newInstance);
};
}
何をやっているとどのように私は自分のコードに追加し、各行のための要素の重みを設定することができますか?