Я работаю над созданием динамической формы из строк, полученных из ответа JSON API.
Здесь я хочу создать динамическую форму, в которой я хочу идентифицировать {field_name} и заменить ее на EditText.
Приведенная ниже строка является строкой, полученной из ответа API, и да, она содержит "{}" как часть строки.
Поэтому я нахожу их с помощью цикла while и создаю EditText каждый раз, когда найден {}.
Теперь проблема, которую я не могу решить, заключается в том, как добавить эти EditText в String/TextView.
Например,
String demo = "{event_name} Event on{event_date} at {event_time} venue {event_venue} All are welcome. -";
Pattern p = Pattern.compile("\\{([^}]*)\\}");
Matcher m = p.matcher(str);
EditText et;
while (m.find()) {
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(width,
LinearLayout.LayoutParams.WRAP_CONTENT);
lp.setMargins(10, 10, 10, 10);
et = new EditText(this);
Log.e("onCreateInternal: ", "=" + i);
SmsTypeGroup.addView(et, lp)
}
После замены {} на EditText из строки желаемый результат будет таким, как показано ниже.
Необходимый вывод показан на этом изображении
Любая помощь будет здорово.
Заранее спасибо.
Примечание. Единственным условием является то, что весь процесс должен выполняться программно из файла Java, без использования XML.