0

MonoTouchダイアログのセクション要素ヘッダーのテキストの位置をカスタマイズしようとしています。スタイル付きテキストを作成するための独自のUILabelを作成し、それをSectionオブジェクトのHeaderViewに割り当てる方法について説明しました。その部分はうまく機能します。

私が今直面している問題は、デフォルトのスタイル設定されていないセクション要素で使用されているオフセットと同様のテキストオフセットを取得するにはどうすればよいかです(添付画像の比較を参照)。何をしても、「スタイル付きセクション」のテキストを画面の左端から移動させる方法が見つからないようです。RectangleF宣言で指定されたx座標を変更しようとしましたが、ビューがレンダリングされるときに指定したものはすべて無視されているように見えます。

スクリーンショットのバッキングコードは次のとおりです。

Root = new RootElement ("Login2Screen");
var labelHeader = new UILabel();
labelHeader = new UILabel(new RectangleF(0, 0, 320, 48));
labelHeader.Text = "Styled 
labelHeader.TextColor = UIColor.Blue;
labelHeader.BackgroundColor = UIColor.Clear;

var styledSection = new Section(labelHeader);
styledSection.Add(new EntryElement("Username", string.Empty, string.Empty));
styledSection.Add(new EntryElement("Password", string.Empty, string.Empty));
Root.Add(styledSection);

var defaultStyleSection = new Section("Default Section");
Root.Add (defaultStyleSection);

ここに画像の説明を入力してください

4

2 に答える 2

5

labelHeaderをUIViewに追加してから、UILabelのx座標を10に設定します。

var viewLabelHeader = new UIView(new RectangleF(0, 0, 320, 48));
var labelHeader = new UILabel(new RectangleF(10, 0, 320, 48));
labelHeader.Text = "Styled section";
labelHeader.TextColor = UIColor.Blue;
labelHeader.BackgroundColor = UIColor.Clear;
viewLabelHeader.AddSubview (labelHeader);

var styledSection = new Section(viewLabelHeader);

結果:

ここに画像の説明を入力してください

于 2013-03-22T23:03:05.613 に答える
0

Section要素内のテキストの位置については何も読んでいませんが、

labelHeader = new UILabel(new RectangleF(0, 0, 320, 48));

あなたはそれを0,0に配置していますか?あなたがそれを10.0にすると、それは動くはずです。つまり、x位置を10に移動します

labelHeader = new UILabel(new RectangleF(10, 0, 320, 48));
于 2013-03-19T21:21:50.507 に答える