明日までの宿題です。XCODE

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
bluedog
記事: 21
登録日時: 13年前

明日までの宿題です。XCODE

#1

投稿記事 by bluedog » 13年前

iPhoneアプリ開発でナビゲーションバー右上ににボタンを作りました。

そのボタンから画面遷移をしたいのですが繋ぐコードでつまづいております。
現在はアクションシートのボタンから画面遷移ができるようになっています。
これを、ナビゲーションバー右上のボタンに変更してそこから画面遷移しようとしています。

XIBは仕様しておらずコードのみで作っています。

現在下記のコードとなっています。
ご教授お願い致します。


[ナビゲーションバーボタン]ファイル名:MWPhotoBrowser.m

コード:

UIBarButtonItem *bbDone = [[UIBarButtonItem alloc]
initWithTitle:@”商品を見る”
style:UIBarButtonItemStyleDone
target:self
action:@selector(closeView)];
self.navigationItem.rightBarButtonItem = bbDone;
bbDone.tintColor = [UIColor blackColor];
 


[ナビゲーションバーボタンからに変更したいアクションシート部分]ファイル名:MWPhotoBrowser.m

コード:

 
- (void)UIBarButtonItem:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex {
if (actionSheet == _actionsSheet) {
// Actions
self.actionsSheet = nil;
if (buttonIndex != actionSheet.cancelButtonIndex) {
if (buttonIndex == actionSheet.firstOtherButtonIndex) {

NSString *urlString;
switch (_currentPageIndex == 0) {
case 0:
urlString = @”http://www.google.co.jp/”;
break;
case 1:
urlString = @”http://www.yahoo.co.jp/”;
break;
case 2:
urlString = @”http://www.google.co.jp/”;
break;
case 3:
urlString = @”http://www.yahoo.co.jp/”;
break;
case 4:
urlString = @”http://www.google.co.jp/”;
break;
case 5:
urlString = @”http://www.yahoo.co.jp/”;
break;

// デフォルト
default:
urlString = @”http://www.google.co.jp/”;
break;
}

ModalViewController* web = [[ModalViewController alloc] initWithUrlString:urlString];

web.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
UINavigationController *NavigationController =
[[UINavigationController alloc] initWithRootViewController:web];
[self presentModalViewController:NavigationController animated:YES];
NavigationController.navigationBar.tintColor = [UIColor blackColor];

return;
 

アバター
h2so5
副管理人
記事: 2212
登録日時: 14年前
住所: 東京
連絡を取る:

Re: 明日までの宿題です。XCODE

#2

投稿記事 by h2so5 » 13年前

MWPhotoBrowser.m

コード:

    UIBarButtonItem *bbDone = [[UIBarButtonItem alloc]
                               initWithTitle:@"商品を見る"
                               style:UIBarButtonItemStyleDone
                               target:self
                               action:@selector(showWebView:)];
    self.navigationItem.rightBarButtonItem = bbDone;
    bbDone.tintColor = [UIColor blackColor];
MWPhotoBrowser.m

コード:

- (IBAction)showWebView:(id)sender {
    
    NSString *urlString;
    switch (_currentPageIndex) {
            
            // ページ番号 0 の時のURL
        case 0:
            urlString = @"http://google.com/";
            break;
            
            // ページ番号 1 の時のURL
        case 1:
            urlString = @"http://yahoo.com/";
            break;
            
            // ページ番号 2 の時のURL
        case 2:
            urlString = @"http://bing.com/";
            break;
            
            // 以下続く...
            
            // デフォルト
        default:
            urlString = @"http://msn.com/";
            break;
    }
    
    webViewController* web = [[webViewController alloc] initWithUrlString:urlString];
    
    web.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
    UINavigationController *NavigationController =
    [[UINavigationController alloc] initWithRootViewController:web];
    [self presentModalViewController:NavigationController animated:YES];
    
}
適当な場所 (viewDidLoad関数の下にでも)挿入してください。

あと、switch (_currentPageIndex == 0) は間違っています。
_currentPageIndexの数値で分岐しているのでswitch (_currentPageIndex)です。

bluedog
記事: 21
登録日時: 13年前

Re: 明日までの宿題です。XCODE

#3

投稿記事 by bluedog » 13年前

h2so5さんありがとうございます!!
WEBページへ繋がりました!

ナビゲーションバーのボタン部分コードを
action:@selector(showWebView:)]
として、- (IBAction)showWebView:(id)senderでアクションすればいいのですね!
無事解決できました!
お忙しいところ見て頂き本当にありがとうございました。

閉鎖

“C言語何でも質問掲示板” へ戻る