► Create static objects once — Object creation and garbage collection  dịch - ► Create static objects once — Object creation and garbage collection  Việt làm thế nào để nói

► Create static objects once — Obje

► Create static objects once — Object creation and garbage collection are particularly expen¬sive operations. Where possible, create drawing objects such as Paint objects, Paths, and Shaders once, rather than re-creating them each time the View is invalidated.
► Remember that onDraw is expensive — Performing the onDraw method is an expensive process that forces Android to perform several image composition and bitmap construction operations. Many of the following points suggest ways to modify the appearance of your Canvas without having to redraw it:
► Use Canvas transforms — Use Canvas transforms, such as rotate and translate, to simplify complex relational positioning of elements on your canvas. For example, rather than positioning and rotating each text element around a clock face, simply rotate the canvas 22.5 degrees, and draw the text in the same place.
► Use Animations — Consider using Animations to perform preset transformations of your View rather than manually redrawing it. Scale, rotation, and transla¬tion Animations can be performed on any View within an Activity and provide a resource-efficient way to provide zoom, rotate, or shake effects.
► Consider using bitmaps, NinePatches, and Drawable resources — If your Views feature static backgrounds, you should consider using a Drawable such as a bitmap, scalable NinePatch, or static XML Drawable rather than dynamically creating it. 
► Avoid overdrawing — A combination of raster painting and layered Views can result in many layers being drawn on top of each other. Before drawing a layer or object, check to confirm if it will be completely obscured by a layer above it. It’s good practice to avoid drawing more than 2.5 times the number of pixels on screen per frame. Transparent pixels still count — and are more expensive to draw than opaque colors.
Advanced Compass Face Example
In Chapter 4, you created a simple compass UI. In the following example, you make some significant changes to the Compass View’s onDraw method to change it from a simple, flat compass to a dynamic artificial horizon, as shown in Figure 11-8. Because the image in Figure 11-8 is limited to black and white, you need to create the control to see the full effect.
1. Start by adding properties to store the pitch and roll values:
0/5000
Từ: -
Sang: -
Kết quả (Việt) 1: [Sao chép]
Sao chép!
► tạo ra đối tượng tĩnh một lần-tạo ra các đối tượng và thu gom rác thải là đặc biệt là expen¬sive hoạt động. Nếu có thể, tạo bản vẽ các đối tượng như các đối tượng Sơn, đường dẫn và Shaders một lần, hơn là tái tạo cho họ mỗi thời gian xem vô hiệu.► Nhớ onDraw đó là đắt tiền — thực hiện phương pháp onDraw là một quá trình tốn kém mà lực lượng Android để thực hiện một số hình ảnh thành phần và bitmap xây dựng hoạt động. Nhiều người trong số những điểm sau đây đề nghị cách để thay đổi sự xuất hiện của vải của bạn mà không cần phải vẽ lại nó:► sử dụng vải biến — sử dụng vải, biến đổi, chẳng hạn như xoay và dịch, để đơn giản hóa định vị quan hệ phức tạp của các yếu tố trên vải của bạn. Ví dụ, thay vì định vị và xoay mỗi yếu tố văn bản xung quanh một mặt đồng hồ, chỉ đơn giản là xoay vải 22,5 độ, và vẽ các văn bản trong cùng một vị trí.► sử dụng hoạt hình — xem xét việc sử dụng hình ảnh động để thực hiện các phép biến đổi cài sẵn của xem của bạn chứ không phải là tự vẽ lại nó. Quy mô, xoay vòng và transla¬tion hình ảnh động có thể được thực hiện trên bất kỳ xem bên trong một hoạt động và cung cấp một cách hiệu quả nguồn tài nguyên để cung cấp các zoom, xoay, hoặc lắc tác dụng.► xem xét sử dụng các ảnh bitmap, NinePatches, và các nguồn lực Drawable — nếu quan điểm của bạn có hình nền tĩnh, bạn nên xem xét sử dụng một Drawable như một ảnh bitmap, khả năng mở rộng NinePatch hoặc tĩnh XML Drawable chứ không phải là tự động tạo ra nó. ► Tránh overdrawing-một sự kết hợp của raster sơn và lớp cảnh có thể dẫn đến nhiều lớp đang được rút ra trên đầu trang của mỗi khác. Trước khi vẽ một lớp hoặc đối tượng, kiểm tra để xác nhận nếu nó sẽ được hoàn toàn che khuất bởi một lớp ở trên nó. Đó là thực hành tốt để tránh vẽ hơn 2,5 lần số lượng điểm ảnh trên màn hình mỗi khung hình. Minh bạch pixel vẫn đếm — và có nhiều tốn kém để vẽ hơn màu sắc đục.Ví dụ nâng cao mặt la bànTrong chương 4, bạn tạo ra một la bàn đơn giản giao diện người dùng. Trong ví dụ sau đây, bạn thực hiện một số thay đổi đáng kể của La bàn xem onDraw phương pháp để thay đổi nó từ một la bàn đơn giản, phẳng với một chân trời nhân tạo động, như minh hoạ trong hình 11-8. Bởi vì những hình ảnh trong hình 11-8 là giới hạn trong màu đen và trắng, bạn cần để tạo ra các điều khiển để xem hiệu ứng đầy đủ.1. bắt đầu bằng cách thêm các thuộc tính lưu trữ sân và cuộn giá trị:
đang được dịch, vui lòng đợi..
Kết quả (Việt) 2:[Sao chép]
Sao chép!
► Tạo các đối tượng tĩnh một lần - sáng tạo đối tượng và thu gom rác hoạt động đặc biệt expen¬sive. Nếu có thể, tạo ra bản vẽ các đối tượng như đối tượng Sơn, Path, và Shaders một lần, chứ không phải tạo lại chúng mỗi lần xem là vô hiệu.
► Hãy nhớ rằng onDraw là đắt tiền - Thực hiện các phương pháp onDraw là một quá trình tốn kém buộc Android để thực hiện nhiều thành phần hình ảnh và xây dựng bitmap hoạt động. Nhiều người trong số những điểm sau đây cho thấy cách để thay đổi sự xuất hiện của Canvas của bạn mà không cần phải vẽ lại nó:
► Sử dụng Canvas biến - Sử dụng Canvas biến, chẳng hạn như xoay và dịch, để đơn giản hóa phức tạp định vị quan hệ của các yếu tố trên vải của bạn. Ví dụ, thay vì vị trí và xoay mỗi phần tử văn bản xung quanh mặt đồng hồ, chỉ cần xoay canvas 22,5 độ, và rút ra những văn bản trong cùng một vị trí.
► Sử dụng động - Xem xét sử dụng động để thực hiện chuyển đổi định trước Xem của bạn chứ không phải là tay vẽ lại nó. Quy mô, luân chuyển, và transla¬tion Ảnh động có thể được thực hiện trên bất kỳ Xem trong một hoạt động và cung cấp một cách tài nguyên hiệu quả để cung cấp zoom, xoay, lắc hoặc hiệu ứng.
► Xem xét sử dụng bitmap, NinePatches, và các nguồn lực có thể vẽ được - Nếu tính năng xem của bạn hình nền tĩnh, bạn nên xem xét sử dụng có thể vẽ như một bitmap, khả năng mở rộng NinePatch, hoặc có thể vẽ được XML tĩnh hơn là động tạo ra nó. 
► Tránh overdrawing - một sự kết hợp của hội họa raster và lớp xem có thể dẫn đến nhiều lớp được rút ra trên đầu của mỗi khác. Trước khi vẽ một lớp hoặc đối tượng, kiểm tra để xác nhận nếu nó sẽ hoàn toàn bị che khuất bởi một lớp phía trên nó. Đó là thực hành tốt để tránh hút hơn 2,5 lần so với số lượng điểm ảnh trên màn hình cho mỗi khung hình. Điểm ảnh trong suốt vẫn còn đếm -. Và đắt tiền hơn để vẽ hơn màu đục
chi tiết Compass Mặt Ví dụ
Trong Chương 4, bạn đã tạo ra một giao diện người dùng la bàn đơn giản. Trong ví dụ sau đây, bạn thực hiện một số thay đổi đáng kể đối với phương pháp onDraw Compass Xem thay đổi nó từ một đơn giản, la bàn bằng phẳng đến một chân trời nhân tạo động, như thể hiện trong hình 11-8. Bởi vì hình ảnh trong hình 11-8 được giới hạn màu đen và trắng, bạn cần phải tạo ra sự kiểm soát để xem hiệu quả đầy đủ.
1. Bắt đầu bằng cách thêm thuộc tính để lưu trữ các pitch và cuộn giá trị:
đang được dịch, vui lòng đợi..
 
Các ngôn ngữ khác
Hỗ trợ công cụ dịch thuật: Albania, Amharic, Anh, Armenia, Azerbaijan, Ba Lan, Ba Tư, Bantu, Basque, Belarus, Bengal, Bosnia, Bulgaria, Bồ Đào Nha, Catalan, Cebuano, Chichewa, Corsi, Creole (Haiti), Croatia, Do Thái, Estonia, Filipino, Frisia, Gael Scotland, Galicia, George, Gujarat, Hausa, Hawaii, Hindi, Hmong, Hungary, Hy Lạp, Hà Lan, Hà Lan (Nam Phi), Hàn, Iceland, Igbo, Ireland, Java, Kannada, Kazakh, Khmer, Kinyarwanda, Klingon, Kurd, Kyrgyz, Latinh, Latvia, Litva, Luxembourg, Lào, Macedonia, Malagasy, Malayalam, Malta, Maori, Marathi, Myanmar, Mã Lai, Mông Cổ, Na Uy, Nepal, Nga, Nhật, Odia (Oriya), Pashto, Pháp, Phát hiện ngôn ngữ, Phần Lan, Punjab, Quốc tế ngữ, Rumani, Samoa, Serbia, Sesotho, Shona, Sindhi, Sinhala, Slovak, Slovenia, Somali, Sunda, Swahili, Séc, Tajik, Tamil, Tatar, Telugu, Thái, Thổ Nhĩ Kỳ, Thụy Điển, Tiếng Indonesia, Tiếng Ý, Trung, Trung (Phồn thể), Turkmen, Tây Ban Nha, Ukraina, Urdu, Uyghur, Uzbek, Việt, Xứ Wales, Yiddish, Yoruba, Zulu, Đan Mạch, Đức, Ả Rập, dịch ngôn ngữ.

Copyright ©2025 I Love Translation. All reserved.

E-mail: