using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using LitJson;
///
/// 简介内容控制
///
public class TipsContentManager : NewSingleton<TipsContentManager>
{
public TextAsset m_ModelData;//模型数据
public Text tipsTitleUI;//简介标题UI
public Text tipsContentUI;//简介内容UI
private JsonData jsonData;//jsonData
public int tipsIndex = 0;//简介初始值
// Start is called before the first frame update
void Awake()
{
jsonData = JsonMapper.ToObject(m_ModelData.text);
//取出respond中的code值,注意是int类型
int id = (int)jsonData[0]["id"];
//取出respond中的msg值
string title = (string)jsonData[1]["title"];
ShowTipsContent(tipsIndex);
}
// Update is called once per frame
void Update()
{
}
///
/// 传入ID 即可改变TipsUI内容
/// 添加语音播报简介
///
///
public void ShowTipsContent(int id) {
tipsTitleUI.text = GetData(id,"title");
tipsContentUI.text = GetData(id, "content");
AudioManager.Instance.PlayFromText(tipsTitleUI.text+","+tipsContentUI.text);
}
///
/// 传入ID 和属性名 获取对应的值
///
///
///
public string GetData(int id,string propertyName) {
string data="";
for (int i=0;i< jsonData.Count;i++) {
if ((int)jsonData[i]["id"] == id)
{
data= jsonData[i][propertyName].ToString();
break;
}
}
return data;
}
}
如标题所说,这个脚本可以方便的生成Tips和选择题。也可以方便的读取json数据
json格式
```csharp
[
{
"id":0,
"type":"原理",
"title":"产甲烷菌是?",
"A":"好氧菌",
"B":"厌氧菌",
"C":"兼氧性菌",
"D":"可根据环境条件进行转换",
"Que":"C"
},
{
"id":1,
"type":"原理",
"title":"沼气厌氧发酵产酸细菌的作用是?",
"A":"为甲烷菌提供养分",
"B":"为水解细菌提供养分",
"C":"营造厌氧环境",
"D":"消除无机物,减少无机物干扰",
"Que":"A"
}
}
脚本里需要引用LitJson.dll文件