kamulog

xamarin.formsのネタなど

Xamarin.Formsのマークアップ拡張でパラメータをバインディングに対応させる

ブログ記事を参考にローカライズにチャレンジしてまして

言語用リソースにこんな項目があって

<data name="Hello" xml:space="preserve">
    <value>こんにちは!{0}さん</value>
    <comment></comment>
</data>

それをマークアップ拡張を使ってXamlから読むときに

<Label Text="{l:Lang Hello,Param={Binding UserName}}" />

こんな感じで置換パラメータをBindingを使って渡せないかなと思っていたところ

というヒントをいただき、いろいろ試してみました。

続きを読む

画像を編集(リサイズ・切り抜き・回転)できるXamarinのプラグインを公開しました。

アプリ開発で、ネットから取得した画像を切り取ってサムネ化して保存するという処理が必要だったので、そういう処理を普通にDependencyServiceまたはprismのIPlatformInitializerを利用する前提で作成していました。

それで、それをライブラリ化しようと思って、何も考えずに普通に切り出して、nugetパッケージまで作成したところで、あれ?これってプラグインにすべき案件じゃないか?と気づいてしまって急遽Plugin for Xamarinとして作り直しました。

作り直しといっても、単純にPlugin用のプロジェクトテンプレートで作成してほぼコピペで移動しただけですが(笑)

そういうわけで完成しましたので、公開しました。

続きを読む

Xamarin.Formsで折り返し可能で子要素を等幅できっちり配置できるWrapLayoutを作成しました。

Xamarin.Formsには標準では、WPFのWrapPanelのように端まで来たら折り返して配置するというようなLayoutは今のところ存在しません。

そんなわけでそういうカスタムレイアウトを「色しらべ」 の時に作成していて、今作成中のアプリでも使用しているので、なかなか活躍の場があるのでは?と思い、今回そのCustomLayoutを整備してみました。

続きを読む