Ios 为什么当我将iPhone旋转到横向时,文本会被拉伸?
我用Xamarin编写了UIView子体,并重写了Draw方法。 在其他工作人员中,它绘制文本。它在任何屏幕方向看起来都不错,但当我将设备旋转到另一个方向时,文本会拉伸或收缩。 图纸代码为:Ios 为什么当我将iPhone旋转到横向时,文本会被拉伸?,ios,xamarin.ios,Ios,Xamarin.ios,我用Xamarin编写了UIView子体,并重写了Draw方法。 在其他工作人员中,它绘制文本。它在任何屏幕方向看起来都不错,但当我将设备旋转到另一个方向时,文本会拉伸或收缩。 图纸代码为: public override void Draw(CGRect rect) { base.Draw(rect); var ss = new UIStringAttributes(); ss.ForegroundColor = mTextColor; ss.Font = mT
public override void Draw(CGRect rect)
{
base.Draw(rect);
var ss = new UIStringAttributes();
ss.ForegroundColor = mTextColor;
ss.Font = mTextFont;
ss.ParagraphStyle = new NSMutableParagraphStyle() { Alignment = UITextAlignment.Center };
using (var g = UIGraphics.GetCurrentContext())
{
for (nint i = 0; i < mBars.Length; ++i)
{
var r = mBars[i];
g.SetFillColor(i + 1 == mBars.Length ? mLastBarColor : mBarColor);
g.FillRect(r);
var ns = new NSAttributedString(mDataSource[i].Item2, ss);
var textRect = new CGRect(r.Left, r.Bottom, r.Width, mTextRectHeight);
ns.DrawString(textRect);
}
}
}
public override void Draw(CGRect)
{
基础绘制(rect);
var ss=新的UIStringAttributes();
ss.ForegroundColor=mTextColor;
ss.Font=mTextFont;
ss.ParagraphStyle=新NSMutableParagraphStyle(){Alignment=UITextAlignment.Center};
使用(var g=UIGraphics.GetCurrentContext())
{
对于(第九i=0;i
罗素是对的。我不知道。
必须将其设置为“重画”在方向改变时不重画图像-因此现有图像会被拉伸/压缩。您只需要强制重新绘制方向change@Russel是的,你说得对!