文字列を別のUIViewControllerに渡してからこのUIViewControllerを開くのに問題があります。これが私がしていることです:
.h
#import <UIKit/UIKit.h>
@interface BroswerViewController : UIViewController
@property (retain, nonatomic) IBOutlet UIWebView *myBrowserView;
@property (nonatomic, retain) NSString * myString;
@end
.m
@implementation BroswerViewController
@synthesize myBrowserView;
@synthesize myString;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewWillAppear:(BOOL)animated {
myString = [myString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://mywebsite/%@",myString]];
NSLog(@"%@",url);
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[myBrowserView loadRequest:request];
}
私がそれを呼び出すクラス:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if (!self.myBroserViewController) {
self.myBroserViewController = [[[BroswerViewController alloc] initWithNibName:@"BroswerViewController" bundle:nil] autorelease];
}
[self.myBroserViewController setMyString:[NSString stringWithString:[stringArray objectAtIndex:indexPath.row]]];
[self.navigationController pushViewController:self.myBroserViewController animated:YES];
}
よし、BrowseViewController クラスに文字列を渡してから、browseviewcontroller クラスを開き、渡した文字列で URL を開きます。 2 回目はランダムに動作し、3 回目はまったく動作せず、回線で常に EXC_BAD_ACCESS を受け取ります
@synthesize myString;
何を間違えたのかわからない…