2013-08-19 15 views
5

Tôi có vấn đề lạ này, vì một lý do nào đó segue của tôi không hoạt động chính xác.Máy thu không có sự phân biệt với việc thực hiện nhận dạng

Tôi có hai thiết lập segues, tùy thuộc vào trạng thái của một cài đặt xác định segue nó choses. Một trong số chúng hoạt động như một nét duyên dáng trong khi người kia nhận được "Người nhận không có sự khác biệt với số nhận dạng"

- (void)viewDidLoad 
{ 
[super viewDidLoad]; 
// Do any additional setup after loading the view, typically from a nib. 

// check if registered already 
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"registered"] == YES) { 
    // Registered 

    // Give the logo some time to show before moving on 
    [NSTimer scheduledTimerWithTimeInterval:4.0 target:self selector:@selector(splashLoadedRegistered:) userInfo:nil repeats:NO]; 
} else { 
    // Register 

    // Give the logo some time to show before moving on 
    [NSTimer scheduledTimerWithTimeInterval:4.0 target:self selector:@selector(splashLoaded:) userInfo:nil repeats:NO]; 
} 
} 



-(void)splashLoaded:(id)sender 
{ 
//This one works 
[self performSegueWithIdentifier:@"registerSegue" sender:self]; 
} 

-(void)splashLoadedRegistered:(id)sender 
{ 
//This one does not work 
[self performSegueWithIdentifier:@"registeredSegue" sender:self]; 
} 

Đây là ảnh chụp màn hình bảng phân cảnh của tôi.

Screenshot

Những điều cần lưu ý:

  1. Tôi đã kiểm tra chính tả của segue.

  2. Đây là bảng phân cảnh duy nhất trong ứng dụng và tôi đã kiểm tra để đảm bảo đây là thiết lập trong info.plist và trong bản tóm tắt dự án.

  3. Tôi đã đặt lại trình mô phỏng và làm sạch dự án.

  4. Khoảng cách đến từ ViewController, không phải là Chế độ xem.

Bất kỳ trợ giúp nào được đánh giá cao.

+0

Có thể trùng lặp: [Người nhận không có phân biệt với số nhận dạng] (http://stackoverflow.com/questions/12015531/receiver-has-no-segue-with-identifier) ​​ –

+2

Tôi thấy bạn sử dụng 'segue' và' seque '(g so với q) thay thế nhau. Nếu bạn làm như vậy trong các số nhận dạng thực tế, điều đó gây ra sự cố. –

+0

Chương trình của bạn có bị lỗi –

Trả lời

10

Không có câu trả lời cho câu hỏi của tôi. Vấn đề có vẻ là một lỗi đơn giản trong xcode. Sau khi thay đổi thiết bị trong trình mô phỏng, hoạt động của segue sẽ ổn. Nó thậm chí làm việc sau khi thay đổi nó trở lại loại thiết bị có vấn đề.

+0

Tôi vừa gặp sự cố này với thiết bị vật lý và thấy rằng chỉ cần gỡ cài đặt ứng dụng và sau đó chạy nó từ Xcode một lần nữa giải quyết được vấn đề này. – arik

+0

Hết sức tò mò, bạn đang chạy phiên bản xcode nào? Tôi đã chạy 4.5 tại thời điểm bài đăng gốc của mình. – EliteTech

+1

Tôi đã chạy phiên bản không phải beta mới nhất của Xcode 5, xây dựng 5A3005. – arik

0

Tôi thấy rằng nếu bạn mở tệp bảng câu chuyện trong trình chỉnh sửa nguồn, bạn sẽ thấy rằng các khoảng cách được đặt trong phần sai, nó phải nằm trong phần kết nối của bộ điều khiển chế độ xem. Xcode 5 đôi khi đặt các phân đoạn vào vị trí sai trong cây XML. Chỉnh sửa cây bằng tay.

0

Cố gắng đổi tên segue của bạn cả trong StoryBoard và thực hiện thủ công trong ViewController. Đôi khi nó xảy ra khi bạn xóa phân đoạn trước đó có cùng tên. Hoặc bạn đã tạo ra hai phân đoạn có cùng tên và bị xóa rồi một trong số chúng.

0

Đối với tôi, tôi phải đảm bảo rằng phân đoạn của tôi đã đi đúng hướng. Đảm bảo rằng tất cả các mũi tên của bạn trong trình chỉnh sửa bảng phân cảnh đang chảy đúng cách!

1

Dựa trên số original poster's own answer, tôi đặt lại "Nội dung và cài đặt" của Trình mô phỏng. Điều này giải quyết được vấn đề.

Tôi hiểu xCode tối ưu hóa sao chép gói ứng dụng vào thiết bị, chỉ sao chép những thứ thay đổi. Tôi đoán rằng có điều gì đó không ổn với điều này và nó không sao chép các thay đổi đối với bảng phân cảnh có hiệu lực.

Các vấn đề liên quan