저는 tableviewcontroller가 있습니다. tableviewcontroller의 각 rowclick에 해당 내용 세부 정보의 세부 정보를 표시하려고합니다.스토리 보드가없는 uitabbarviewcontroller ios7의보기 높이 제한
세부 사항은 다음과 같이 고정 컨텐츠를해야합니다 볼 행 :
- 헤더
- 이미지 제목에 관련된 헤더 아래
- 제목 저는 여기의 각 뷰를 표시 할
- uitabbarcontroller 탭 버튼
위의 요점 포인트 1-3의 내용은 고정 될 viewcontroller 페이지의 절반을 덮을 것입니다. & viewcontroller의 아래쪽 절반은 4 번째 포인트, 즉 각각의 탭에 대해 생성 된 뷰에 따라 변경 될 각각의 tabbarbuttons의 뷰를 갖습니다.
보기의 위쪽 절반을 고정시키는 해결책을 찾을 수 없습니다. 탭바의 화면을 화면의 아래쪽 절반으로 제한하는 방법.
을 사용하지 않고이 신청서를 으로 보내고 있습니다.
검색 량은 많지만 해결책이 없습니다.
예제 코드 또는 가이드가있는 경우 제공하십시오.
다음은 내가 정확히 안드로이드에서 만든 것처럼 내가 원하는 것의 이미지입니다.
이미지의 내용을 흐리게 처리해야합니다. 다음 위의 이미지에서
- 상단에있는 파란색 막대하는 것은 고정 된 상태로 유지됩니다 헤더입니다.
- 헤더 아래의 갈색 막대와 헤더 아래의 희끄무레 한 이미지도 고정됩니다.
- 이미지 아래의 4 개의 버튼은 IOS의 화면 하단에 표시되는 탭바 버튼입니다.
- 아래의 탭 모음 단추는 첫 번째 탭 모음 단추의 내용을 포함하는보기입니다.
질문 제가 상기 지점의 제 2 고정하고 각 tabbarbuttons 대한 전망을 함유의 ViewController가 4 개 TabBar의 버튼을 사용하여 화면의 나머지 절반보아야 할 것이다.
따라서 탭 단추 중 하나를 클릭하면 화면의 아래쪽 절반이 차지하는보기 만 변경됩니다. & 위쪽 절반은 고정 (고정) 상태로 유지됩니다.
내 설명은 질문에 대한 의구심을 분명히하기를 바랍니다.
내가 내 시나리오를 구현하기위한 코드를 작성했습니다있는 기능을 구현 한 : @ 사이먼 맥 로린 제안 내용에 따라
---- EDITED 솔루션는, 다음은 코드입니다.
-(void)loadShowDetailsTabBarController
{
ConceptViewController *conceptViewController;
CastViewController *castViewController;
ShowDetailsFeedbackViewController *showDetailsFeedbackViewController;
PromosViewController *promoViewController;
UIImage *conceptBtn = [UIImage imageNamed:@"showdetailstabidle_btn_bg.png"];
UIImage *conceptBtnSelected = [UIImage imageNamed:@"showdetailstabselected_btn_bg.png"];
UIImage *castBtn = [UIImage imageNamed:@"showdetailstabidle_btn_bg.png"];
UIImage *castBtnSelected = [UIImage imageNamed:@"showdetailstabselected_btn_bg.png"];
UIImage *feedbackBtn = [UIImage imageNamed:@"showdetailstabidle_btn_bg.png"];
UIImage *feedbackBtnSelected = [UIImage imageNamed:@"showdetailstabselected_btn_bg.png"];
UIImage *promoBtn = [UIImage imageNamed:@"showdetailstabidle_btn_bg.png"];
UIImage *promoBtnSelected = [UIImage imageNamed:@"showdetailstabselected_btn_bg.png"];
conceptBtn = [conceptBtn imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
conceptBtnSelected = [conceptBtnSelected imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
castBtn = [castBtn imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
castBtnSelected = [castBtnSelected imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
feedbackBtn = [feedbackBtn imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
feedbackBtnSelected = [feedbackBtnSelected imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
promoBtn = [promoBtn imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
promoBtnSelected = [promoBtnSelected imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)
{
conceptViewController = [[ConceptViewController alloc] initWithNibName:@"ConceptViewController_iPad" bundle:nil];
castViewController = [[CastViewController alloc] initWithNibName:@"CastViewController_iPad" bundle:nil];
showDetailsFeedbackViewController = [[ShowDetailsFeedbackViewController alloc] initWithNibName:@"ShowDetailsFeedbackViewController_iPad" bundle:nil];
promoViewController = [[PromosViewController alloc] initWithNibName:@"PromosViewController_iPad" bundle:nil];
}
else if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone)
{
conceptViewController = [[ConceptViewController alloc] initWithNibName:@"ConceptViewController" bundle:nil];
castViewController = [[CastViewController alloc] initWithNibName:@"CastViewController" bundle:nil];
showDetailsFeedbackViewController = [[ShowDetailsFeedbackViewController alloc] initWithNibName:@"ShowDetailsFeedbackViewController" bundle:nil];
promoViewController = [[PromosViewController alloc] initWithNibName:@"PromosViewController" bundle:nil];
}
conceptViewController.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"CONCEPT" image:conceptBtn selectedImage:conceptBtn];
castViewController.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"CAST" image:castBtn selectedImage:castBtnSelected];
showDetailsFeedbackViewController.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"FEEDBACK" image:feedbackBtn selectedImage:feedbackBtnSelected];
promoViewController.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"PROMO" image:promoBtn selectedImage:promoBtnSelected];/**/
UITabBarController *showDetailstabVC = [[UITabBarController alloc] init];
showDetailstabVC.viewControllers = [NSArray arrayWithObjects:conceptViewController,castViewController,showDetailsFeedbackViewController,promoViewController, nil];
showDetailstabVC.view.frame = CGRectMake(0, 250, screenSize.width, screenSize.height-250);
self.view.window.rootViewController = showDetailstabVC;
[self.view addSubview:showDetailstabVC.view];
}
제 코드가 정확한지 알려주세요.
나는 내가 원한 것을 볼 수있다.
그러나 나는 다음과 같은 오류 얻을 TabBar의 버튼을 클릭하면 이제 문제가 :EXC_BAD_ACCESS (코드 = exc_i386_gpflt는)
오류는 디버그 화면, 응용 정지에 주어지지 main.m 다음 행에서 :
복귀 UIApplicationMain (는 argc, argv를, 무, NSStringFromClass ([AppDelegate에 클래스]));
좋아, 나는 이것이 농담이나 트롤이라고 확신한다. 그 그림이 신에 대한 사랑에서 어떻게 설명합니까? –
@imon 나는 이미지의 내용을 흐리게하고 업로드 된 흐려진 이미지에 대한 이미지 아래에 설명을 올려 놓았습니다. 이미지에 대한 설명을 읽으십시오. –
내가 그랬고 덜 의미가 –