遍历存储所有物体添加到列表中(使用GameObject.activeSelf进行判断)

//存储菜单列表
List<GameObject> subMenu = new List<GameObject>();

//存储所有子菜单
public void StoreSubMenuData()
{
  var menu = mainMenuScreen.transform.FindChild("back/menuPanel");
  foreach (Transform kk in menu)
  {
    if (kk.GetComponent<Image>() != null && kk.GetComponent<Button>() == null)
    {
      subMenu.Add(kk.gameObject);
    }
  }
}
//隐藏所有子菜单
public void HideSubMenu()
{
  foreach (GameObject obj in subMenu)
  {
    if (obj.activeSelf == true)
    {
      obj.SetActive(false);
    }
  }
}

时间: 2024-12-14 18:47:00

遍历存储所有物体添加到列表中(使用GameObject.activeSelf进行判断)的相关文章

for循环将字典添加到列表中出现覆盖前面数据的问题

user_list = []dic = {}for i in range(3): username = input("用户名") password = input("密码") dic["用户名"]=username dic["密码"]=password user_list.append(dic)print(user_list)结果 用户名1密码2用户名3密码4用户名5密码6[{'用户名': '5', '密码': '6'}, {

reduce 阶段遍历对象添加到ArrayList中的问题

起初遍历values时直接把对象添加到集合中,后来输出结果和预期不符,debug时发现添加到集合中的对象的值全部是最后一个对象的值,网上百度了下,发现是reduce阶段对象重用的问题,reduce阶段的key,value分别指向一个对象,无论操作了多少个键值对,始终是这两个对象,而ArrayList的add()添加的是对象的引用而不是对象的值,所以如果想要保存key,value的值(属性),需要重新new一个对象进行保存,需要添加到集合中的,应当先new一个对象,拷贝属性后再添加到集合中,不能把

【转】无法将notepad++添加到打开方式列表中的解决办法

问题:想要设置notepad++为默认打开方式,却发现在点击browse找到notepad++.exe点击打开后没有在打开方式列表中找到notepad++. 原因:更新程序版本后程序的路径发生了变动.然而注册表中得文件路径并没有改变导致的. 解决办法: 1. 点击开始,输入regedit,点击回车 2.在注册表中找到 HKEY_CLASSES_ROOT 下面的 Applications   3.修改注册表 1).在Applications下面找到对应的程序名,我名为notepad++.exe,点

每日学习心得:SharePoint 为列表中的文件夹添加子项(文件夹)、新增指定内容类型的子项、查询列表中指定的文件夹下的内容

前言: 这里主要是针对列表中的文件下新增子项的操作,同时在新建子项时,可以为子项指定特定的内容类型,在某些时候需要查询指定的文件夹下的内容,针对这些场景都一一给力示例和说明,都是一些很小的知识点,希望能够对大家有所帮助. 1.   在列表中为列表项添加子项 为列表添加子项大家都很熟悉,但是如何为列表项添加子项呢?例如列表项是一个文件夹,如何为该文件夹添加子项呢?这里就用到了List.AddItem()方法,具体示例如下: 首先我们要获取列表中的子项: SPListItem root_item=l

学习远控界面设计四: 列表中添加条目

列表设计思路: (1)服务端上线后要显示在列表中,这样有一个统一的函数来处理会使代码更加简洁. (2)消息显示分为成功失败两种,还要在其中显示消息产生的时间,这样也应该有一个统一的函数来处理. 我们先来添加一个函数: void CGhostDlg::AddList(CString strIP, CString strPCName, CString strOS, CString strProxy) { m_list_oline.InsertItem(0,strIP); //默认为0行 这样所有插入

在窗体中有两个多选列表,用户可以从左侧列表中选择任意项,添加到右侧列表中。反之亦然。

<form name="myForm"> <table> <tr valign="top"> <td> <select name="leftList" multiple size="6" style="width:50px;"> <option>a</option> <option>b</option>

完全二叉树的链式存储结构的转化 &amp; 非递归中序遍历二叉树

1 /* 2 * 二叉树 3 * 4 * (将完全二叉树的数组形式改为链表形式) 5 * 6 * 1 7 * 2 3 8 * 4 5 6 7 9 * 8 10 * 11 */ 12 #include <iostream> 13 #define MAX 10 14 using namespace std; 15 16 typedef struct btnode{ 17 int data; 18 struct btnode * lchild; 19 struct btnode * rchild;

python列表中添加对象时的注意

最近在用python写代码,用到了对象数组.在c++中我们要使用能够灵活操作的对象数组,一般会用stl的vector类,该类的push_back方法可以将一个对象的拷贝加入到vector对象中,所以当使用[]下标对vector的元素进行修改时,原来的作为push_back参数的那个对象的值并不会改变.python中类似的方法是列表的append方法,但是要注意此时若加入到列表中的是基础数据类型,则是值传递,若是对象,则是引用传递.这种参数的传递方式和java一样.因此,在python中通过列表下

Python实践练习:在 Wiki 标记中添加无序列表

题目描述 项目:在 Wiki 标记中添加无序列表 在编辑一篇维基百科的文章时,你可以创建一个无序列表,即让每个列表项占据一行,并在前面放置一个星号.但是假设你有一个非常大的列表,希望添加前面的星号.你可以在每一行开始处输入这些星号,一行接一行.或者也可以用一小段Python 脚本,将这个任务自动化. bulletPointAdder.py 脚本将从剪贴板中取得文本,在每一行开始处加上星号和空格,然后将这段新的文本贴回到剪贴板.例如,如果我将下面的文本复制到剪贴板(取自于维基百科的文章"List