- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 iPad 应用程序,它可以绘制类似描图纸的东西:一个半透明的表面,一侧有标记。在应用程序中,用户可以“折叠”纸张以对齐标记。
最初的原型(prototype)只是自定义 View 中的 drawRect 覆盖,使用低级 CGxxx 调用来进行绘图,我只是手动处理绘图顺序:对于“右侧向上”部分,我首先绘制纸张,然后绘制标记最重要的是,对于折叠的部分,我先画标记,然后在上面画半透明的“纸”。这很好用,但水平很低。我想更好地利用 iOS。
由于 Core Animation 具有 3D 变换,我希望 3D 旋转(翻转纸张)也会自动更改 CALayers 的绘制顺序(纸张是半透明图层,标记是子图层。唉,这不会发生。 ..动画之后,绘制顺序与之前相同。
câu hỏi:
1)有没有办法像我希望的那样自动处理绘图顺序?我怀疑答案是否定的,但想问问比我了解更多的人。
2)什么技术适合这种绘图?核心动画? CG图层?只是坚持熟悉的低级调用?我有点不知所措。
仅供引用,绘制折叠纸涉及大量转换和剪裁。过程是:剪辑到底部,画纸(图像)然后标记(路径),然后剪辑到顶部,对折线进行反射变换,然后画标记然后画纸。同样,它运行良好,但代码量很大(如果简单的话)。有更好的方法吗?
感谢您的任何意见,
戴夫·约翰逊
1 Câu trả lời
虽然 Core Animation 有 3D 变换,但在合成层方面仍然非常接近 2.5D。您可以做的是修改层 z 顺序(zPosition
của CALayer
属性),以给人一种标记在半透明纸“前面”或“下面”的印象。
为此,您需要在两个单独的 CALayer
上准备纸张和标记。 s,据我了解,你已经有了。但是请注意,子图层将在其父图层之上呈现......因此,您需要将它们设为兄弟图层以使 z 顺序生效,而不是使“标记”图层成为“纸”图层的子图层,例如,通过使它们成为公共(public)父层的子层:
- (invisible) container layer
- marks layer (zPosition 2)
- paper layer (zPosition 1)
sublayerTransform
属性,而不是修改它们各自的
transform
属性。)
关于ios - 自动更改 CALayers 的绘制顺序...可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4541182/
Thân gửi các bạn: Ngày 18 tháng 3 năm 2014. Tôi đang giải quyết một tình huống khi sử dụng ng-repeat, các phần tử bên trong một mảng (mà tôi lấy từ chuỗi Json) thay đổi thứ tự ban đầu của chúng. Cần phải rõ ràng rằng mảng
Có rất nhiều câu hỏi hỏi về cách thay đổi lớp của div trong trình xử lý nhấp chuột JavaScript, ví dụ ở đây: Thay đổi kiểu Div onclick. Tôi hiểu điều đó rất tốt (chỉ cần thay đổi .className) và nó hoạt động
Tôi đã nhập cơ sở dữ liệu từ Access vào MySQL, nhưng một trong các bảng có tên cột là "Number of Shares" có dấu cách, mặc dù tôi đã thử thay đổi, thay thế hoặc thậm chí xóa tên cột nhưng không được. Có ai có thể giúp giải quyết vấn đề này không String UpdateQuary = "U
Tôi đang làm việc trên một yếu tố ngẫu nhiên của trường học. Hiện tại, tôi có một trang với hai mã CSS. Một cho chế độ xem bình thường và một cho chế độ xem bị vô hiệu hóa. Trang này cũng bao gồm hai nút sẽ thay đổi kiểu bảng được sử dụng. chức năng c
Tôi cần thay đổi văn bản trong một phần tử HTML bằng javascript, nhưng tôi không biết cách thực hiện. ¿ Có giúp được gì không? Tôi định nghĩa nó như thế này: Văn bản tôi muốn thay đổi. Tôi đang cố gắng làm điều này: docum
Tôi có một thanh điều hướng chính nằm trong tệp riêng nav_bar.shtml mà mọi trang khác đều có. Thanh menu là thanh menu jQuery (ApyCom là tên công ty bán các thanh điều hướng này). Cách xác định các thành phần trên thanh điều hướng
Tôi đang loay hoay với mã của mình và bắt đầu tự hỏi liệu thay đổi từ: if(array[index] == 0) thành: if(!array[index] != 0) có thể ảnh hưởng đến bất kỳ mã nào hay không, hay nó chỉ thực hiện cùng một chức năng và tôi không cần nó.
Tôi đang cố gắng tìm cách thay đổi kích thước cửa sổ bảng điều khiển. Sau đây là mã cho hàm tôi đang sử dụng: #include #include #define WIDTH 70 #define HEIGHT 35 HANDLE wHnd;
Tôi gặp nhiều tình huống dẫn đến cùng một hộp thông báo cảnh báo. Có giải pháp nào dễ hơn/tốt hơn là thực hiện nhiều câu lệnh if không? SẢN PHẨM BOX1 BOX2 BOX3
Tôi có XELEMENT B Bob Petier 19310227 1 chứa các phần tử này và tôi muốn chuyển đổi tiền tố như thế này. B Bob Thú Cưng
Tôi gặp phải tình huống này khi sử dụng MySQL 5.6: Truy vấn này hoạt động và trả về kết quả mong đợi: select * from some_table where a = 'b' and metadata->>"$.countr
Tôi tự hỏi liệu có ai biết gói hoặc hàm nào có thể phát hiện bất kỳ sự thay đổi nào trong định dạng của cột ngày tháng trong R không, tức là phát hiện nơi định dạng của vectơ ngày tháng thay đổi, ví dụ: 11/2/90 12/2/90 . . . 15/Feb/1990 16/Feb/1990 .
Tôi muốn có thể thay đổi nhãn của GtkButton sau khi tiện ích được hiển thị char *ButtonStance == "Connect"; GtkWidget *EntryButton = gtk_button_ne
Tôi đang sử dụng bo mạch phát triển FPGA Altera DE2 và cố gắng sử dụng cổng thẻ SD và đường ra âm thanh. Tôi đang lập trình bằng VHDL và C nhưng tôi gặp khó khăn với phần C do thiếu kinh nghiệm/kiến thức. Hiện tại, tôi có thể
Sau khi nhận thấy liên kết này: http://www.newscientist.com/blogs/nstv/2010/12/best-videos-of-2010-progress-bar-illusion.h
Tôi muốn biết trong một số trường hợp, ansible sẽ hiển thị "changed=0" ngay cả khi tác vụ playbook đã được thực thi thành công và ok=2. Điều này xảy ra khi sử dụng Rest API và mô-đun uri. Tôi đã cố gắng tìm lời giải thích nhưng vô ích. Ai có thể nói
Câu hỏi này đã có câu trả lời: Đã đóng cách đây 12 năm. Có thể trùng lặp: thêm nút vào cảnh báo thông báo đẩy Có thể chỉ định các nút để cảnh báo thông báo đẩy trong hộp cảnh báo được hiển thị bởi thông báo từ xa không?
Khi bạn có nhiều hơn 5 View Controller trong TabBarController, hệ thống sẽ tự động thiết lập View "More" cho bạn. Có thể thay đổi màu của thanh điều hướng trong Chế độ xem này để phù hợp với màu tôi đang sử dụng không?
Làm thế nào tôi có thể thay đổi vị trí của thư mục .AndroidStudioBeta, theo mặc định nằm tại \..\User\.AndroidStudioBeta trong Windows, mà không làm hỏng bất cứ thứ gì? /Sửa: Tìm
Hiện tại tôi đang cố gắng áp dụng phong cách lập trình chức năng hơn cho một dự án liên quan đến phát triển GUI cấp thấp (dựa trên LWJGL). Rõ ràng là trong trường hợp này, có rất nhiều trạng thái cần phải được lưu giữ và có thể thay đổi được trong phiên bản hiện tại. Mục tiêu của tôi cuối cùng là có một trạng thái hoàn toàn không thể thay đổi để tránh
Tôi là một lập trình viên xuất sắc, rất giỏi!