美文网首页Unity技术分享
UNITY 在代码里修改按钮的navigation

UNITY 在代码里修改按钮的navigation

作者: 仰望天堂_e6c6 | 来源:发表于2017-09-20 19:23 被阅读0次

1. 声明新的navigation

public Button buybtn1, buybtn2, buybtn3, buybtn4, backbtn, buy3btn;    public Listbuymeshbtn;

Navigation custumNav1 = new Navigation();

Navigation custumNav2 = new Navigation();

Navigation custumNav3 = new Navigation();

Navigation custumNav4 = new Navigation();

2. 在panel的enab函数里修改,因为是三个礼包放一个panel里,并且第三个礼包是另外三个里面随机选出的一种,在购买后消失,按照三个都在,有两个,有一个,全部没有了,重新修改navigation,这样太复杂,还有好办法,但是如果只用动态修改几个button这个还是有帮助的

private void OnEnable()

{

MainMenuGUI.instance.startbtn.gameObject.SetActive(false);

MainMenuGUI.instance.shopbtn.gameObject.SetActive(false);

MainMenuGUI.instance.BuyDiamonsbtn.gameObject.SetActive(false);

MainMenuGUI.instance.giftbtn.gameObject.SetActive(false);

MainMenuGUI.instance.quitbtn.gameObject.SetActive(false);

MainMenuGUI.instance.tutorbtn.gameObject.SetActive(false);

MainMenuGUI.instance.giftsbtn1.gameObject.SetActive(false);

//print(giftpack3.activeSelf + "giftpack3.activeSelf");

//print(Bought[0]);

// print(Bought[1]);

//print(Bought[2]);

if (Bought[0]==true&& Bought[1] == true&& Bought[2] == true)

{ giftpack3.gameObject.SetActive(false);

//print("把三皮肤格关掉");

}

if (Bought[0]==true|| Bought[1] == true|| Bought[2] == true)

{

//while (true)

for(int k=0;k<3;k++)

{

buynumb = Random.Range(0, giftmashes.Count);

//print(Bought[buynumb] + "Bought[buynumb]");

if (Bought[buynumb] != true)

{

//print(buynumb + "open new buynumb");

giftpack3 = giftmashes[buynumb];

buy3btn = buymeshbtn[buynumb];

giftpack3.gameObject.SetActive(true);

break;

}

else

{

// print("找不到合适的了");

continue;

}

}

}

if (giftpack1.activeSelf==false && giftpack2.activeSelf == false && giftpack3.activeSelf == false)

{ textgiftnull.gameObject.SetActive(true); }

if (giftpack1.activeSelf == true && giftpack2.activeSelf == true && giftpack3.activeSelf == true)

{

custumNav1.mode = Navigation.Mode.Explicit;

custumNav1.selectOnRight = buybtn2;

custumNav1.selectOnDown = backbtn;

custumNav1.selectOnLeft = buy3btn;

custumNav1.selectOnUp = backbtn;

buybtn1.navigation = custumNav1;

custumNav2.mode = Navigation.Mode.Explicit;

custumNav2.selectOnRight = buy3btn;

custumNav2.selectOnDown = backbtn;

custumNav2.selectOnLeft = buybtn1;

custumNav2.selectOnUp = backbtn;

buybtn2.navigation = custumNav2;

custumNav3.mode = Navigation.Mode.Explicit;

custumNav3.selectOnRight = buybtn1;

custumNav3.selectOnDown = backbtn;

custumNav3.selectOnLeft = buybtn2;

custumNav3.selectOnUp = backbtn;

buymeshbtn[buynumb].navigation = custumNav3;

custumNav4.mode = Navigation.Mode.Explicit;

custumNav4.selectOnRight = buy3btn;

custumNav4.selectOnDown = buybtn2;

custumNav4.selectOnLeft = buybtn1;

custumNav4.selectOnUp = buybtn2;

backbtn.navigation = custumNav4;

}

else if (giftpack1.activeSelf == true && giftpack2.activeSelf == true && giftpack3.activeSelf == false)

{

custumNav1.mode = Navigation.Mode.Explicit;

custumNav1.selectOnRight = buybtn2;

custumNav1.selectOnDown = backbtn;

custumNav1.selectOnLeft = buybtn2;

custumNav1.selectOnUp = backbtn;

buybtn1.navigation = custumNav1;

custumNav2.mode = Navigation.Mode.Explicit;

custumNav2.selectOnRight = buybtn1;

custumNav2.selectOnDown = backbtn;

custumNav2.selectOnLeft = buybtn1;

custumNav2.selectOnUp = backbtn;

buymeshbtn[buynumb].navigation = custumNav2;

custumNav4.mode = Navigation.Mode.Explicit;

custumNav4.selectOnRight = buybtn2;

custumNav4.selectOnDown = buybtn2;

custumNav4.selectOnLeft = buybtn1;

custumNav4.selectOnUp = buybtn1;

backbtn.navigation = custumNav4;

}

else if (giftpack1.activeSelf == true && giftpack2.activeSelf == false && giftpack3.activeSelf == true)

{

custumNav1.mode = Navigation.Mode.Explicit;

custumNav1.selectOnRight = buy3btn;

custumNav1.selectOnDown = backbtn;

custumNav1.selectOnLeft = buy3btn;

custumNav1.selectOnUp = backbtn;

buybtn1.navigation = custumNav1;

custumNav3.mode = Navigation.Mode.Explicit;

custumNav3.selectOnRight = buybtn1;

custumNav3.selectOnDown = backbtn;

custumNav3.selectOnLeft = buybtn1;

custumNav3.selectOnUp = backbtn;

buymeshbtn[buynumb].navigation = custumNav3;

custumNav4.mode = Navigation.Mode.Explicit;

custumNav4.selectOnRight = buy3btn;

custumNav4.selectOnDown = buybtn1;

custumNav4.selectOnLeft = buybtn1;

custumNav4.selectOnUp = buybtn1;

backbtn.navigation = custumNav4;

}

else if (giftpack1.activeSelf == false && giftpack2.activeSelf == true && giftpack3.activeSelf == true)

{

custumNav2.mode = Navigation.Mode.Explicit;

custumNav2.selectOnRight = buy3btn;

custumNav2.selectOnDown = backbtn;

custumNav2.selectOnLeft = buy3btn;

custumNav2.selectOnUp = backbtn;

buybtn2.navigation = custumNav2;

custumNav3.mode = Navigation.Mode.Explicit;

custumNav3.selectOnRight = buybtn1;

custumNav3.selectOnDown = backbtn;

custumNav3.selectOnLeft = buybtn1;

custumNav3.selectOnUp = backbtn;

buymeshbtn[buynumb].navigation = custumNav3;

custumNav4.mode = Navigation.Mode.Explicit;

custumNav4.selectOnRight = buy3btn;

custumNav4.selectOnDown = buybtn1;

custumNav4.selectOnLeft = buybtn1;

custumNav4.selectOnUp = buybtn1;

backbtn.navigation = custumNav4;

}else

{

custumNav1.mode = Navigation.Mode.Explicit;

custumNav1.selectOnRight = backbtn;

custumNav1.selectOnDown = backbtn;

custumNav1.selectOnLeft = backbtn;

custumNav1.selectOnUp = backbtn;

buybtn1.navigation = custumNav1;

custumNav2.mode = Navigation.Mode.Explicit;

custumNav2.selectOnRight = backbtn;

custumNav2.selectOnDown = backbtn;

custumNav2.selectOnLeft = backbtn;

custumNav2.selectOnUp = backbtn;

buybtn2.navigation = custumNav2;

custumNav3.mode = Navigation.Mode.Explicit;

custumNav3.selectOnRight = backbtn;

custumNav3.selectOnDown = backbtn;

custumNav3.selectOnLeft = backbtn;

custumNav3.selectOnUp = backbtn;

buymeshbtn[buynumb].navigation = custumNav3;

if (giftpack1.activeSelf == true)

{

custumNav4.mode = Navigation.Mode.Explicit;

custumNav4.selectOnRight = buybtn1;

custumNav4.selectOnDown = buybtn1;

custumNav4.selectOnLeft = buybtn1;

custumNav4.selectOnUp = buybtn1;

backbtn.navigation = custumNav4;

} else if (giftpack2.activeSelf == true)

{

custumNav4.mode = Navigation.Mode.Explicit;

custumNav4.selectOnRight = buybtn2;

custumNav4.selectOnDown = buybtn2;

custumNav4.selectOnLeft = buybtn2;

custumNav4.selectOnUp = buybtn2;

backbtn.navigation = custumNav4;

} else if (giftpack3.activeSelf == true)

{

custumNav4.mode = Navigation.Mode.Explicit;

custumNav4.selectOnRight = buy3btn;

custumNav4.selectOnDown = buy3btn;

custumNav4.selectOnLeft = buy3btn;

custumNav4.selectOnUp = buy3btn;

backbtn.navigation = custumNav4;

} else if (giftpack1.activeSelf == false && giftpack2.activeSelf == false&& giftpack3.activeSelf == false)

{

custumNav4.mode = Navigation.Mode.None;

backbtn.navigation = custumNav4;

}

}

相关文章

网友评论

    本文标题:UNITY 在代码里修改按钮的navigation

    本文链接:https://www.haomeiwen.com/subject/pyaosxtx.html