Я хочу создавать кнопки динамически, используя инфлятор только один раз. У меня три кнопки и одна функция загрузки. Эта функция вызывается в каждой кнопке, и при каждом вызове появляются предварительно созданные кнопки. Я хочу создать только одну кнопку при каждом нажатии кнопки. Как?
LayoutInflater inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
assert inflater != null;
LinearLayout root = (LinearLayout) inflater.inflate(R.layout.analyze_company_buttons_layout, null, false);
Button btnCompany = root.findViewById(R.id.btnCompany);
btnCompany.setText(header);
btnCompany.setTag(headerCode);
btnCompany.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String compCode = (String) view.getTag();
Company company = getCompany(compCode, filterCompanyList);
lines = new ArrayList<>();
if (company != null) {
filterCompanyList.remove(company);
setBackgroundColorForTabButton(view, lytTabs, R.color.colorPrimaryExtraExtraLight, R.color.white);
} else {
company = getCompany(compCode, companyList);
filterCompanyList.add(company);
setBackgroundColorForTabButton(view, lytTabs, R.color.white, R.color.colorPrimaryExtraExtraLight);
}
loadFunct(startDate, endDate, "LW");
}
});
lytTabs.addView(root);
setBackgroundColorForTabButton(btnCompany, lytTabs, R.color.white, R.color.colorPrimaryExtraExtraLight);
lytTabs.invalidate();