【发布时间】:2026-01-15 15:15:01
【问题描述】:
我正在制作一个包含 5 列的动态表格...我希望当我单击总计按钮时,我会获得添加到一个文本视图中的某一特定列之前的所有金额的总和...就像我想要的图片一样将每行的总金额添加到下面的文本视图中......请帮助我......我尝试了很多东西,但没有一个对我有逻辑
et8 = new EditText(this);
et9 = new EditText(this);
et10 = new EditText(this);
et7.setText("");
et8.setText("");
et9.setText("");
et10.setText("");
et6.setBackgroundResource(R.drawable.edittext3);
et6.setGravity(Gravity.CENTER);
et6.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);
et7.setBackgroundResource(R.drawable.edittext3);
et7.setGravity(Gravity.CENTER);
et7.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);
et8.setBackgroundResource(R.drawable.edittext3);
et8.setGravity(Gravity.CENTER);
et8.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);
et9.setBackgroundResource(R.drawable.edittext3);
et9.setGravity(Gravity.CENTER);
et9.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);
et10.setBackgroundResource(R.drawable.edittext3);
et10.setGravity(Gravity.CENTER);
et10.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);
tr1.addView(et6);
tr1.addView(et7);
tr1.addView(et8);
tr1.addView(et9);
tr1.addView(et10);
t1.addView(tr1);
try {
for (i = 0; i <= t1.getChildCount()-1; i++)
qty.setText(String.valueOf(i));
}
catch (Exception e)
{
Toast.makeText(this, "failed to add qty", Toast.LENGTH_SHORT).show();
}
et9.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
try {
int i, j;
int mul;
i = Integer.parseInt(et8.getText().toString());
j = Integer.parseInt(et9.getText().toString());
mul = i * j;
et10.setText("" + (Integer.toString(mul)));
}
catch (Exception e)
{
Toast.makeText(getApplicationContext(), "please calculate before adding row", Toast.LENGTH_SHORT).show();
}
}
@Override
public void afterTextChanged(Editable s) {
}
});
final Snackbar snbr = Snackbar.make(view,"Row added",Snackbar.LENGTH_SHORT);
snbr.getView().setBackgroundColor(ContextCompat.getColor(view.getContext(),R.color.colorsnac1));
snbr.setActionTextColor(getResources().getColor(R.color.snactxt));
snbr.show();
snbr.setAction("Dismiss", new View.OnClickListener() {
@Override
public void onClick(View v) {
t1.removeView(tr1);
}
});
}
}
【问题讨论】:
标签: android android-tablelayout tablerow