A mobile (Android) UI Flow Application Made with Unity and programmed in C#.
The project features UI workflow, data loading and more.
The language and topic menus are populated programmatically through the received data.
- Requires Unity 2021.3.5f1
- Clone the project repository to your local drive
- Open Unity Hub → Add → Find and open project directory
- Open AudioVisualGuide
Based on Unity 2D Mobile template
- Adaptive performance (Mobile feature) - 3.0.3
- TextMeshPro 3.0.7
- Unity UI - 1.0.0
Heavily depends on the Assets/Resources/Public/resources.json
manifest file.
The file contains information about how the data will be loaded and deserialized.
Several classes support deserialization:
TranslatedContent
Language
Media
Topic
Photo
Interface which has two methods: ClearMenu
and PopulateMenu.
Use it on menus which are dynamically created (populated).
- For example, topic links are populated based on the content in the selected language.
- For example, it can be used by a higher-level class to automatically perform clear and populate.
void IPopulatableMenu.ClearMenu()
{
foreach(var topicButton in transform.GetComponentsInChildren<TopicButton>())
{
Destroy(topicButton.gameObject);
}
}
void IPopulatableMenu.PopulateMenu()
{
int order = 1;
foreach(var topic in m_Topics)
{
Instantiate(m_TopicButtonPrefab, transform)
.SetTopic(topic, order++);
}
}