1

インターフェイスビルダーから新しいuiscrollviewを追加しただけで、viewDidLoadメソッドでそのサブビューを取得してコンソールに出力しています。2 つのイメージ ビューが表示されます。彼らがどこから来たのか分かりません。

NSArray * views = [friendScrollView subviews];
NSLog(@"views are %@", [views description]); 

コンソールで:

views are (
    "<UIImageView: 0x1b82f0; frame = (805 203; 7 7); alpha = 0; opaque = NO; autoresize = TM; userInteractionEnabled = NO; layer = <CALayer: 0x1b6cb0>>",
    "<UIImageView: 0x17b1d0; frame = (805 203; 7 7); alpha = 0; opaque = NO; autoresize = LM; userInteractionEnabled = NO; layer = <CALayer: 0x1bdbd0>>"
)

それらを削除すると、スクロールビューからも削除されません。何か案が?

4

3 に答える 3

3

これらのイメージ ビューは、水平および垂直スクロール インジケーターのイメージです。これらは、UIScrollViewインスタンスの作成時にデフォルトで存在します。

UIScrollView指定するための iOS HIG ガイドライン

スクロール ビューが最初に表示されたとき、またはユーザーがスクロール ビューを操作したときに、垂直または水平スクロール インジケーターが短時間点滅して、表示できるコンテンツがまだあることをユーザーに示します。

これは、優れたユーザー エクスペリエンスを確保するために推奨されるベスト プラクティスです。したがって、それらを削除しないでください。スクロール インジケータを表示しないことがどうしても必要な場合は、スクロール ビューに、プログラムでこれを実現するためのプロパティが用意されています。必要なプロパティをに設定しますNO

  • showsHorizo​​ntalScrollIndicator
  • showsVerticalScrollIndicator
于 2013-05-31T12:19:59.273 に答える
2

これらは垂直および水平スクロール インジケーターであり、削除することは想定されていません。

UIKIT_CLASS_AVAILABLE(2_0) @interface UIScrollView : UIView <NSCoding> {
    ...
    UIImageView* _verticalScrollIndicator;
    UIImageView* _horizontalScrollIndicator;
于 2013-05-31T12:20:01.247 に答える