やりたいこと
UIButton MaterialComponents.MDCButtonのタイトルを、任意のメソッド呼び出しでアルファベット一文字に変更したい
発生している事象
UIButton MaterialComponents.MDCButtonメソッドにおいて、第一引数にアルファベット小文字1文字を指定した際、指定引数が大文字に変換されてタイトルに設定されてしまいます。
これはiOS側の仕様なのでしょうか?
ソース
※例示のため簡略化
C#
1 void ToLowerCase(UIButton button) 2 { 3 if (Regex.IsMatch(button.TitleLabel.Text, @"^[a-zA-Z]$")) 4 { 5 var changedChar = button.TitleLabel.Text.ToLower(); 6 // button.SetTitle(changedChar, UIControlState.Normal); 7 button.SetTitle("a", UIControlState.Normal); // 挙動確認のため固定値を設定 ⇒ボタンタイトルが「A」になる 8 } 9 }
バージョン等
VS 2017 (Windows) Version 15.9.11
Xamarin - 4.12.3.83
Xamarin.iOS & Xamarin.Mac SDK - 12.4.0.64
追記
当該箇所で使っているコンポーネントがUIButtonではありませんでした。申し訳ありません…
外部ライブラリのMaterialComponents.MDCButton (UIButtonの派生クラス) を使っていました。
UIButtonで試したところ、問題なく小文字を設定できました。
このライブラリ側の問題と考えられます。
内容が変わって申し訳ないのですが MaterialComponents.MDCButton に小文字一文字を設定する方法はないのでしょうか。
回答2件
あなたの回答
tips
プレビュー