rksoftware

Visual Studio とか C# とかが好きです

LayoutInflater 使用時に You must supply a layout_width attribute

Xamarin.Android で LayoutInflater により View を構築し用とした際にBinary XML file line #1: You must supply a layout_width attribute. というエラーが発生し失敗することがありました。
結論から言うと原因は不明です。

状況

・Android のネイティブから Xaamrin.Android への移植時
・レイアウトの XML は Android ネイティブのプロジェクトからファイルコピーして取り込み
・1 階層以上の親子関係のある要素が定義されている
・XML ファイルを編集し、1 要素だけの階層のない定義にするとエラーにならない
・その他、どう書き換えても階層のある定義はエラー

解決?

・該当の XML にブラウザから 1 要素分の定義をコピペするとエラーにならなくなった

もうエラーが発生しない

・一度エラーが発生しなくなると今度は、どう書き換えてもエラーが発生しなくなった
・ファイルコピーでもともとエラーが発生していたファイルに戻してもエラーが再現しない

謎です。謎なのでまたいつ再発するかわからないので、楽しみに待つことにします。