zoukankan      html  css  js  c++  java
  • UniRx学习之路(二)——UI应用实践

    1.Subject使用技巧

     1 public Button btn0;
     2 public Button btn1;
     3 public Button btn2;
     4 public Button btn3;
     5 public Button btn4;
     6 private Subject<int> _currentBtn = new Subject<int>();
     7 
     8 void InitializeItem(int index){
     9     OnShowItem(index);  
    10 }
    11 
    12 void OnShowItem(int index){
    13     _currentBtn.OnNext(index);
    14 }
    15 
    16 public IObservable<int> ShowInfoItem(){
    17   return _currentBtn.onClickAsObservable();        
    18 }
    1 private InfoListView view = new InfoListView();
    2 
    3 public void Initialize(){
    4     view.ShowInfoItem().Subscribe(onNext: x=>{
    5         print(x);
    6     }
    7 
    8 }

     Subject同时充当了Observer和Observable的角色

    2.将数据绑定到Text显示

     1 public Text text;
     2 public Slider slider;
     3 public Button btn;
     4 public ScrollRect scroll;
     5 
     6 void Start(){
     7   slider.OnValueChangedAsObservable().Where(x => x > 0.5f).
     8       SubscribeToText(ReturnText(),x =>((int)(slider.value * 100))
     9       .ToString());
    10       
    11   btn.OnClickAsObservable().SubscribeToText(ReturnText(),
    12       x => btn.gameObject.transform.GetChild(0).
    13       GetComponent<Text>().text);
    14     
    15   scroll.OnScrollAsObservable().SubscribeToText(ReturnText(),
    16       x  => x.ToString());
    17 }    
    18 
    19 Text ReturnText(){
    20   return text;  
    21 }

     3.Interactable相互影响作用

    1 public Toggle toggle;
    2 public Button btn;
    3 
    4 void Start(){
    5   toggle.OnValueChangedAsObservable().SubscribeToInteractable(btn);  
    6 }

     toggle是一个勾选选项,当toggle被勾选时,btn可以使用;当toggle不被勾选时,btn不起作用

  • 相关阅读:
    忘了SA密码的SQL SERVER
    关于VC中的错误处理
    编译filezilla
    001.第一天|第二天
    JVM学习之类加载
    JAVA学习之HashCode
    JAVA学习之泛型
    JAVA学习之动态代理
    solr学习之域的管理与中文分析器配置
    solr 学习之简介及安装
  • 原文地址:https://www.cnblogs.com/yeting-home/p/6363066.html
Copyright © 2011-2022 走看看