3

Monotouch IOS の開発に関して:

UIScrollView 内に Text を配置し、ズームインしてもテキストがぼやけないようにする方法について、コード スニペットを書いたり、紹介したりできますか? CALayer を使用するか、ズームが終了したら再レンダリングします。私は先週これを試みてきましたが、何も機能していないようです。これに関しても良い例は見つかりませんでした。

CALayer を使用したというスタック オーバーフローに関する同様の投稿を見つけましたが、これを行う方法の例は示されていません: ズームインするとテキストがぼやける

皆さんありがとう

4

1 に答える 1

4

ズーム倍率に基づいてレイヤーの ContentsScale プロパティを設定する必要があります。

あなたのズーム終了方法で

public override void ZoomingEnded(UIScrollView scrollView, UIView withView, float atScale)
{
    withView.Layer.ContentsScale =  UIScreen.MainScreen.Scale * atScale;
    withView.SetNeedsDisplay();
}

注: これは、UIScrollViewDelegate を使用していることを前提としています

MainScreen スケールを掛ける理由は、Retina ディスプレイをサポートするためです。

ビューレイヤーを更新していますが、問題を引き起こしているレイヤーを更新する必要があります。また、影響を受けるすべてのサブレイヤーにスケールを自分で適用する必要があります。

それが役立つことを願っています。

于 2012-08-03T07:28:37.607 に答える