خب می دونید که برای اینکه در Runtime بتونید UI رو دستکاری کنید، باید عناصری که می خواید اضافه بشه رو بصورت داینامیک و درواقع در کدهای جاوا اضافه کنید.
مرحله ی اول اینه که در این مورد تحقیق کنید که البته پیچیدگی خاصی هم نداره، فقط یکم کدنویسیش بیشتره (برای ست کردن خصوصیات هر ویو...)
بعد باید یک ساختار داده ایجاد کنید (حالا با هر فرمتی، XML, JSON...)، که بتونید اشاره کنید که چه عناصری باید وجود داشته باشن و درصورت لزوم بعضی خصوصیاتشون رو هم که باید ست بشه رو هم ذکر می کنید
مثلاً:
[ {
"type": "tv",
"height": "match_parent",
"width": "48dp",
"properties": {
"text": "This is Caption",
"textColor": "#fafafa"
}
},
{
"type": "btn",
"height": "wrap_content",
"width": "48dp",
"properties": {
"text": "This is Caption",
"textColor": "#fafafa",
"background": "your_drawable"
}
}
]
حالا که تصمیم گرفتید ساختار داده ی شما چطور باید باشه، پس از دریافت این اطلاعات و استخراج بخش های مختلف و پارس کردنش، باید کدهای رو آماده کنید که با استفاده از این اطلاعات اشیاء موردنیاز شما رو بسازه و به View اضافه کنه.
این کلیت کار هست، همه ی این بخش ها رو که به هم بچسبونید به چیزی که می خواید می رسید.
یک انسان نیکوکار از همین الگو پیروی کرده، کتابخانه ای رو ساخته که همه ی این کارها رو خیلی براتون ساده می کنه (و البته امکانات خیلی زیادی هم در اختیارتون میزاره): https://github.com/Avocarrot/json2view