Встроенный веб-браузер MWFeedParser ВМЕСТО Safari

Итак, я использую MWFeedParser, который, как мне кажется, является красивым приложением RSS-канала, но при нажатии на ссылку он переходит в Safari. Я боюсь, что значительная часть пользователей iPhone не знает о том, что они могут дважды щелкнуть единственную и неповторимую кнопку iPhone, чтобы просмотреть все открытые приложения и вернуться к RSS-каналу, и поэтому застрянут. Поэтому я бы предпочел использовать браузер в приложении.

Другими словами, в настоящее время, когда я нажимаю на ссылку из MWFeedParser, она переходит в Safari; Я предпочитаю, чтобы это происходило во встроенном в приложение браузере.

У меня настроен класс браузера под названием WebViewController. в основном с [detailWebView loadRequest:[NSURLRequest requestWithURL:detailURL]]; Таким образом, "detailURL" - это то, что он будет искать

Что мне поместить в DetailTableViewController вместо кода sharedApplication???


person SnowboardBruin    schedule 08.08.2011    source источник


Ответы (1)


облом, никто не смог ответить... если другие ищут, как это сделать, измените содержимое didSelectRowAtIndexPath на

if (_webViewController == nil) {
        self.webViewController = [[[WebViewController alloc] initWithNibName:@"WebViewController" bundle:[NSBundle mainBundle]] autorelease];
    }

    MWFeedItem *entry = [parsedItems objectAtIndex:indexPath.row];
    _webViewController.entry = entry;
    [self.navigationController pushViewController:_webViewController animated:YES];


    // Deselect
    [self.tableView deselectRowAtIndexPath:indexPath animated:YES];

Добавьте WebViewController; у .m есть

#import "WebViewController.h"
#import "MWFeedItem.h"
@implementation WebViewController
@synthesize webView = _webView;
@synthesize entry = _entry;

// The designated initializer.  Override if you create the controller programmatically and want to perform customization that is not appropriate for viewDidLoad.


- (void)viewWillAppear:(BOOL)animated {

    NSURL *url = [NSURL URLWithString:_entry.link];    
    [_webView loadRequest:[NSURLRequest requestWithURL:url]];

}

- (void)viewWillDisappear:(BOOL)animated {

    [_webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"about:blank"]]];

}

- (void)didReceiveMemoryWarning {
    // Releases the view if it doesn't have a superview.
    [super didReceiveMemoryWarning];

    // Release any cached data, images, etc. that aren't in use.
}

- (void)viewDidUnload {
    [super viewDidUnload];
    // Release any retained subviews of the main view.
    // e.g. self.myOutlet = nil;
}


- (void)dealloc {
    [_entry release];
    _entry = nil;
    [_webView release];
    _webView = nil;
    [super dealloc];
}

И .h имеет

@class MWFeedItem;

@interface WebViewController : UIViewController {
    UIWebView *_webView;
    MWFeedItem *_entry;
}

@property (retain) IBOutlet UIWebView *webView;
@property (retain) MWFeedItem *entry;

(По сути, я просто взял часть веб-просмотра RSS-канала Рэя Вендерлиха и добавил его в этот.)

person SnowboardBruin    schedule 03.01.2012