0

私は小さなアプリを構築しようとしています。写真、ビデオ、ドキュメントの 3 つのタブを備えたタブ付きアプリです。各タブには、表示するギャラリー、ビデオ、ドキュメントを選択するためのテーブルビューが表示されます。ビデオは正常に動作します。

フォト ギャラリーに問題があります。サンプルから正常に動作しているFgalleryを使用します: Fgallery git

.h

#import <UIKit/UIKit.h>
#import "FGalleryViewController.h"

@interface FirstViewController : UIViewController <FGalleryViewControllerDelegate, UITableViewDelegate, UITableViewDataSource> { 
    NSArray *localCaptions;
    NSArray *localImages;
    NSArray *networkCaptions;
    NSArray *networkImages;
    FGalleryViewController *localGallery;
    FGalleryViewController *networkGallery;
}

@property (nonatomic, strong) UITableView *myTableView;
@end

.m

#import "FirstViewController.h"

@implementation FirstViewController
@synthesize myTableView;

#pragma mark - View lifecycle

- (void)viewDidLoad
{
    [super viewDidLoad];
    CGRect tableViewRect = self.view.bounds;
    UITableView *tableView = [[UITableView alloc]
                              initWithFrame:tableViewRect
                              style:UITableViewStylePlain];
    self.myTableView = tableView;   
    self.myTableView.autoresizingMask =
    UIViewAutoresizingFlexibleHeight |
    UIViewAutoresizingFlexibleWidth;

    [self.view addSubview:self.myTableView];
    self.myTableView.dataSource = self;
    self.myTableView.delegate = self;
}

#pragma mark - Table view delegate

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{
             NSLog( @"Choix Table");

    if( indexPath.row == 0 ) {
        NSLog( @"selection 1");

        localGallery = [[FGalleryViewController alloc] initWithPhotoSource:self];
        [self.navigationController pushViewController:localGallery animated:YES];  
    }
    else if( indexPath.row == 1 ) {
        networkGallery = [[FGalleryViewController alloc] initWithPhotoSource:self];
        [self.navigationController pushViewController:networkGallery animated:YES];
    ...
}

ギャラリーの表示方法がよくわかりません。これdidSelectRowAtIndexPathfgalleryのものです。ビューを表示するように変更しようとしましたが、Objective-C が初めてで、行き詰まっています。

ヘルプやガイドラインをいただければ幸いです。

ありがとう

4

2 に答える 2

0

FGalleryViewController.m で、btn2 をナビゲーション コントローラーに追加しました。

- (void)setUseThumbnailView:(BOOL)useThumbnailView
{
    _useThumbnailView = useThumbnailView;
    if( self.navigationController ) {
        if (_useThumbnailView) {
            UIBarButtonItem *btn = [[UIBarButtonItem alloc] initWithTitle:@"See All" style:UIBarButtonItemStylePlain target:self action:@selector(handleSeeAllTouch:)] ;
            [self.navigationItem setRightBarButtonItem:btn animated:YES];
            UIBarButtonItem *btn2 = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:self action:@selector(dismissModalViewControllerAnimated:)] ;
            [self.navigationItem setLeftBarButtonItem:btn2 animated:YES];
        }
        else {
            [self.navigationItem setRightBarButtonItem:nil animated:NO];
        }
    }
}

そしてほら

于 2011-12-11T23:02:52.257 に答える
0

追加した

if( indexPath.row == 0 ) {
        NSLog( @"selection 1");

        localGallery = [[FGalleryViewController alloc] initWithPhotoSource:self];
// Create the navigation controller and present it modally.
        UINavigationController *navigationController = [[UINavigationController alloc]
                                                        initWithRootViewController:localGallery];
        [self presentModalViewController:navigationController animated:YES];

ビューは正常に表示されますが、戻るボタンがありません

于 2011-12-11T19:33:32.437 に答える