@Composable
fun CategoryScreen(categories: List<Category>) {
val selectedCategory = remember { mutableStateOf(categories[0]) }
val subcategories = selectedCategory.value.subcategories
Column(Modifier.fillMaxSize()) {
// Категории
TabRow(selectedTabIndex = categories.indexOf(selectedCategory.value)) {
categories.forEachIndexed { index, category ->
Tab(
text = { Text(category.name) },
selected = selectedCategory.value == category,
onClick = { selectedCategory.value = category }
)
}
}
// Подкатегории
LazyColumn(Modifier.weight(1f)) {
items(subcategories.size) { index ->
val subcategory = subcategories[index]
Button(
modifier = Modifier.fillMaxWidth().padding(16.dp),
onClick = { /* Обработка выбора подкатегории */ }
) {
Text(subcategory.name)
}
}
}
// Предметы
LazyColumn(Modifier.weight(1f)) {
val items = subcategories.flatMap { it.items }
items(items.size) { index ->
val item = items[index]
Button(
modifier = Modifier.fillMaxWidth().padding(16.dp),
onClick = { /* Обработка выбора предмета */ }
) {
Text(item.name)
}
}
}
// Описание предмета
Box(Modifier.weight(1f)) {
Text("Здесь будет описание")
}
}
}
1. Нужно ли использовать БД на телефонах? (например, если мне нужно сохранить какую-то статистику)
2. Как использовать SqLite совместно с Юнити? (Пожалуйста, киньте примеры, где подробно всё описывается)
Закрывайте или удаляйте пожалуйста свои вопросы по получение ответа или по сроку давности
using UnityEngine;
using System.Collections;
public class CharacterController1 : MonoBehaviour
{
public Rigidbody2D rb2d;
public float speed;
public int move;
public bool facingRight = true;
private Animator anim;
void Start()
{
anim = GetComponent<Animator> ();
rb2d = GetComponent<Rigidbody2D> ();
}
void FixedUpdate()
{
rb2d.velocity = new Vector2(move * speed, rb2d.velocity.y);
}
public void Update()
{
float move = Input.GetAxis("Horizontal");
anim.SetFloat("Speed", Mathf.Abs(move));
if ((move < 0) && (facingRight))
{
Flip();
}
if ((move > 0) && (!facingRight))
{
Flip();
}
}
void Flip()
{
facingRight = !facingRight;
Vector3 theScale = transform.localScale;
theScale.x *= -1;
transform.localScale = theScale;
}
}