サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
新内閣発足
qiita.com/swd
はじめに Prism入門3回目です。今回はDelegateCommandについて説明します。 MVVMではViewは描画しかできません。メソッドはVMに記述される必要があります。 Viewにメソッドは基本的に書かないので、バインドでメソッドを実行できるようにする必要があります。 そこで登場するのが、ICommandインターフェースです。 例えば、ICommandインターフェースを持ったクラスのプロパティをボタンでバインドするとボタンを押した時にコマンドが実行されます。 ただ、メソッドごとにICommandインターフェースを持ったクラスを用意するのはとても面倒です。そこでDelegateCommandを使用します。 DelegateCommand DelegateCommandは初期化時にラムダ式やメソッドを引数に指定できます。 引数には実行する内容と、実行できるか、の2つのメソッドを指定で
はじめに Prism入門5回目です。 今回もVMからVに通知する方法について説明します。 前回はVMからVに通知してダイアログを表示する方法のみを話しました。 予め設定されているダイアログは表示できますが、それ以外はできません。 エラー表示だけならそれで十分ですが、実際には広告や起動時のヘルプの表示など、 好きなようにVMからVを操作できるようにする必要が出てきます。 Prismでは任意の操作をVMからVに行うために、EventAggregatorという機能があります。 EventAggregator EventAggregatorは今までと同じように、 コンストラクタにIEventAggregator eventAggregatorを記述することで使用できるようになります。 今までと異なり、ViewModelのクラスにだけでなくViewのクラスにも引数を記述します。 Viewには可能な限
qiita.com/swdyh
ポイント1: 全データをメモリに載せない CSV.parse/CSV.read/CSV.tableあたりは全データがメモリにのってしまうので使わないようにします。 その点ではCSV.foreachもよいですが、ポイント2と3の文字コードや改行コードを考えるとCSV.newのほうが都合がいいです。 Rails等でファイルアップロードのデータを受け取るとき場合には、params[:file].tempfileを使えばファイルから読みだすことができて全データがメモリに載るのをさけることができます。 ふつうにファイルからデータを読めばいいケースではたんにファイル名を指定します。 ポイント2: 文字コード NKF.nkfはstringを入力にとるのでポイント1を考えるとつかいにくいので、Encodingで変換します。 コード上はUTF-16のデータをうけとるようになっていますが、要件に合わせて変更し
qiita.com/swdkn
# dumping track ID 1 timing: Num DTS CTS Size RAP Offset isLeading DependsOn DependedOn Redundant RAP-SampleGroup Roll-SampleGroup Roll-Distance Sample 1 DTS 0 CTS 0 1659 1 128407 0 0 0 0 0 0 0 Sample 2 DTS 1001 CTS 1001 476 0 130066 0 0 0 0 0 0 0 Sample 3 DTS 2002 CTS 2002 208 0 130542 0 0 0 0 0 0 0 Sample 4 DTS 3003 CTS 3003 167 0 130750 0 0 0 0 0 0 0 ・ ・ ・ Sample 55 DTS 54054 CTS 54054 7228 0 4
トレタ Advent Calender 2016 の21日目の記事です。 変更履歴のように、そのときの状態を保存しておいて、過去データを遡ってそのときの状態を表示したいということがあったりあます。関連を含まない場合はPaperTrailを使ったりしますが、関連のデータも含めたい場合はなかなかいい方法がなくて困っていました。PaperTrailに関連を保存するExperimentalな機能としてありますが、複雑なつくりになっていたり、読み出すのにけっこうな量のクエリが必要だったりして、少し試した感じだとなかなかきびしそうでした。 単に関連も含めてデータをシリアラライズしたい場合は、実はas_json/to_jsonのincludeオプションを使えば簡単にできてしまいます。あとは、そこからもとデータを復元できればいいので、その部分をつくりました。 swdyh/toar: Deserialize
このページを最初にブックマークしてみませんか?
『@swdのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く