2014-10-20 8 views
0

iOS8 확장 프로그램, 특히 공유 확장 프로그램에서 loadPreviewView 메서드를 재정 의하여 사용자 지정 미리보기를 제공 할 수 있습니까? UIIMageView 하위 뷰를 사용하여 50x50 UIView를 반환하여 하나를 만들었지 만 확장보기 (너무 먼 오른쪽) 외부에 표시되며 공유 확장에서 textView를 왼쪽으로 밀지 않습니다. 누구든지이 기능을 사용자 정의한 경우 샘플 코드를 제공하십시오! 고마워요iOS 8 공유 확장 loadPreviewView

+0

주목 : http://stackoverflow.com/questions/24056024/sharing-extension-in-ios8-beta?rq=1 –

답변

1

네, 너비가 & 높이 제한을 사용하여 작동하게 할 수 있습니다. 크기와 마스크를 설정하면 제대로 표시되지 않습니다. 당신이 UIImageView에서 파생 intrinsicContentSize에 대한 구현을 제공 할 수 있습니다, 또는

- (UIView *)loadPreviewView { 
UIView * previewView = [super loadPreviewView]; 

if (previewView == nil) { 
    previewView = [[UIImageView alloc] initWithFrame:CGRectZero]; 
    [previewView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:[previewView(90)]" options:0 metrics:nil views:NSDictionaryOfVariableBindings(previewView)]]; 
    [previewView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:[previewView(90)]" options:0 metrics:nil views:NSDictionaryOfVariableBindings(previewView)]]; 
} 

return previewView; 

}

1

:

@interface MyImageView : UIImageView 

@end 

@implementation MyImageView 

-(CGSize)intrinsicContentSize { 
    return CGSizeMake(70, 70); 
} 

@end 

그것은이 WWDC 세션에 설명 된 것을 여기

은 샘플 코드입니다 : https://developer.apple.com/videos/play/wwdc2015/224/?time=334

t의 당신은 또한 당신과 같이 볼 구성 할 가능성이 높습니다 :

view.clipsToBounds = YES; 
view.contentMode = UIViewContentModeScaleAspectFill; 
관련 문제