2015-09-21 17 views
13

Tôi có tùy chỉnh UICollectionViewCell trong ứng dụng tvOS của mình. Nó có một số UIImageView và một số UILabel s trong đó. Tôi có thể làm cho tế bào được tập trung bằng cách thực hiện giao thức UIFocusEnvironment mà không có bất kỳ vấn đề nào, nhưng tôi không thể tìm ra cách để cho ô tùy chỉnh của tôi xuất hiện tập trung. (Độ cao và phản hồi chuyển động của người dùng trên bàn di chuột).Animate/thu phóng chế độ xem tùy chỉnh được tập trung trong tvOS

Tôi biết về tài sản UIImageView 's adjustsImageWhenAncestorFocused, nhưng chỉ nâng cao hình ảnh trong ô của tôi chứ không phải toàn bộ ô.

Có cách nào để làm cho tvOS áp dụng hình thức/hành vi tiêu điểm tiêu chuẩn (dường như) vào chế độ xem tùy chỉnh của tôi hoặc tôi có phải làm tất cả theo cách thủ công không?

Xin cảm ơn trước.

Trả lời

16

Tôi đã hỏi cùng một câu hỏi trên diễn đàn nhà phát triển Apple. Nhân viên Apple đã trả lời:

Đối với chế độ xem tùy chỉnh, bạn sẽ phải thực hiện giao diện tiêu điểm . Trong phương pháp cập nhật tiêu điểm, bạn có thể thực hiện những việc như áp dụng chuyển đổi và sử dụng API UIMotionAffect.

- (void)didUpdateFocusInContext:(UIFocusUpdateContext *)context withAnimationCoordinator:(UIFocusAnimationCoordinator *)coordinator { 
    if (context.nextFocusedView == self) { 
     // handle focus appearance changes 
    } 
    else { 
     // handle unfocused appearance changes 
    } 
} 

Tôi nghĩ rằng nó muốn được khá hữu ích để thực hiện một phần mở rộng UIView để có thể áp dụng các hành vi tương tự với bất kỳ giao diện tùy chỉnh.

Có thể họ muốn chúng tôi triển khai các cách thú vị hơn để hiển thị tiêu điểm cho người dùng? Đó sẽ là một lý do tốt để cho phép điều này dễ dàng chỉ cho UIImageView (Chưa kể rằng hành vi này cũng cho biết thêm ánh sáng mô phỏng trên UIImageView, đó là đẹp, nhưng có lẽ chỉ có ý nghĩa đối với hình ảnh).

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