「Unity/R3/UniRxから移植」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→IObservableをObservableへ) |
(→ReactiveCollectionをObservableListへ) |
||
行47: | 行47: | ||
==ReactiveCollectionをObservableList<T>へ== | ==ReactiveCollectionをObservableList<T>へ== | ||
+ | // R3 | ||
+ | using ObservableCollections; | ||
+ | private ObservableList<string> users = new ObservableList<string>(); | ||
+ | users | ||
+ | .ObserveAdd() | ||
+ | .Subscribe(value => | ||
+ | { | ||
+ | Debug.Log($"[Add]Index={value.Index},Value={value.Value}"); | ||
+ | }); | ||
+ | |||
+ | // UniRx | ||
+ | private ReactiveCollection<string> users = new ReactiveCollection<string>(); | ||
+ | users | ||
+ | .ObserveAdd() | ||
+ | .Subscribe(value => | ||
+ | { | ||
+ | Debug.Log($"[Add]Index={value.Index},Value={value.Value}"); | ||
+ | }); | ||
==ReactiveDictionaryをObservableDictionary<TKey, TValue>へ== | ==ReactiveDictionaryをObservableDictionary<TKey, TValue>へ== |
2024年4月2日 (火) 09:04時点における版
目次
using置換
- using UniRx; + using R3; - using UniRx.Triggers; + using R3.Triggers; - using System;
参考:https://zenn.dev/tkada/articles/a96258e080056a
ObserveEveryValueChangedはEveryValueChangedへ
// UniRx transform.ObserveEveryValueChanged(_ => _.Count).Subscribe(count => Debug.Log(count)); // R3 Observable.EveryValueChanged(transform, _ => _.Count) .Subscribe(count => Debug.Log(count));
参考:https://qiita.com/toRisouP/items/4344fbcba7b7e8d8ce16
Observable.Createの置換
// UniRx IObservable<int> isCompletedsAsObservable = Observable.Create<int>(observer => { return Disposable.Empty; }); // R3 Observable<int> isCompletedsAsObservable = Observable.Create<int>(observer => { return Disposable.Empty; });
IObservableをObservableへ
// UniRx ObservableCollision2DTrigger landTrigger; IObservable<Collision2D> landOnCollisionEnterAsObservable = landTrigger.OnCollisionEnter2DAsObservable(); // R3 ObservableCollision2DTrigger landTrigger; Observable<Collision2D> landOnCollisionEnterAsObservable = landTrigger.OnCollisionEnter2DAsObservable();
ReactiveCollectionをObservableList<T>へ
// R3 using ObservableCollections; private ObservableList<string> users = new ObservableList<string>(); users
.ObserveAdd() .Subscribe(value => { Debug.Log($"[Add]Index={value.Index},Value={value.Value}"); });
// UniRx private ReactiveCollection<string> users = new ReactiveCollection<string>(); users
.ObserveAdd() .Subscribe(value => { Debug.Log($"[Add]Index={value.Index},Value={value.Value}"); });