CN110764849A - Rendering method and device for user interface, client device and electronic device - Google Patents
Rendering method and device for user interface, client device and electronic device Download PDFInfo
- Publication number
- CN110764849A CN110764849A CN201810827100.XA CN201810827100A CN110764849A CN 110764849 A CN110764849 A CN 110764849A CN 201810827100 A CN201810827100 A CN 201810827100A CN 110764849 A CN110764849 A CN 110764849A
- Authority
- CN
- China
- Prior art keywords
- interface element
- rendered
- element data
- interface
- rendering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 63
- 238000000034 method Methods 0.000 title claims abstract description 46
- 230000011218 segmentation Effects 0.000 claims abstract description 29
- 238000012545 processing Methods 0.000 claims abstract description 27
- 230000002829 reductive effect Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
Abstract
A rendering method and device for a user interface, a client device and an electronic device are disclosed. The method comprises the following steps: acquiring interface element data to be rendered of an interface to be displayed by an application program; carrying out segmentation processing on the interface element data to be rendered; distributing the segmented interface element data to be rendered to a plurality of threads for rendering; and merging the interface element data rendered by the multiple threads and then displaying. According to the method and the device, the rendering time of the interface element data can be reduced, the user interface can be displayed more quickly, and the user experience is improved.
Description
Technical Field
The present invention relates to the field of software user interface technologies, and in particular, to a method, a device, and an apparatus for rendering a User Interface (UI), and an electronic device.
Background
Mobile intelligent terminals such as mobile phones, tablet computers, etc. have become essential electronic devices in people's daily life. The user can operate the application program through the mobile intelligent terminal, carry out human-computer interaction operation on an application interface displayed on a display screen of the mobile intelligent terminal, and obtain corresponding application service.
The mobile terminal generally renders the interface elements of the application interface and then displays the rendered interface elements. At present, the rendering process of the interface elements of the application program is completed in a single-thread mode.
However, when an application interface contains more or more complex interface elements, the conventional rendering method is easy to cause the problem of display blockage such as black screen and flower screen, and the user experience is seriously influenced.
Disclosure of Invention
An object of the present disclosure is to provide a new technical solution of a rendering method of a user interface.
According to a first aspect of the present disclosure, there is provided a rendering method of a user interface, including:
acquiring interface element data to be rendered of an interface to be displayed by an application program;
carrying out segmentation processing on the interface element data to be rendered;
distributing the segmented interface element data to be rendered to a plurality of threads for rendering;
and merging the interface element data rendered by the multiple threads and then displaying.
Optionally, the segmenting the interface element data to be rendered includes:
and according to the data type of the interface element data to be rendered, carrying out segmentation processing on the interface element data to be rendered.
Optionally, the allocating the partitioned interface element data to be rendered to a plurality of threads for rendering includes:
correspondingly distributing the interface element data to be rendered of one data type to one thread;
and the multiple threads run in parallel to render the interface element data to be rendered.
Optionally, the segmenting the interface element data to be rendered includes:
and according to the interface module type of the interface element data to be rendered, carrying out segmentation processing on the interface element data to be rendered.
Optionally, the allocating the partitioned interface element data to be rendered to a plurality of threads for rendering includes:
correspondingly distributing the interface element data to be rendered of one interface module type to one thread;
and the multiple threads run in parallel to render the interface element data to be rendered.
Optionally, the interface element data to be rendered at least includes: interface element style, interface element size, interface element position, number of interface elements, and interface element type.
Optionally, before acquiring the interface element data to be rendered of the application program, the method further includes:
an operation of running an application input by a user is detected.
Optionally, before acquiring the interface element data to be rendered of the application program, the method further includes:
and detecting an operation of opening the application interface input by the user.
According to a second aspect of the present disclosure, there is provided a rendering apparatus of a user interface, including:
the device comprises a device for acquiring interface element data to be rendered of an application program;
the device is used for carrying out segmentation processing on the interface element data to be rendered according to a preset segmentation rule;
the device is used for distributing the interface element data to be rendered after the segmentation of the segmentation unit to a plurality of threads for rendering;
and the device is used for merging the interface element data which are rendered by the threads and then displaying the merged interface element data.
According to a third aspect of the present disclosure, there is provided a client device comprising a rendering apparatus of a user interface according to any one of the second aspects of the present disclosure, or designed to perform operations in a rendering method of a user interface according to any one of the first aspects of the present disclosure.
According to a fourth aspect of the present disclosure, there is provided an electronic device comprising the client apparatus of the third aspect of the present disclosure; alternatively, the electronic device comprises a memory for storing instructions and a processor; the instructions are for controlling the processor to operate so as to perform a method of rendering a user interface as claimed in any one of the first aspects of the present disclosure.
According to one embodiment of the disclosure, the rendering time of the interface element data can be reduced, the user interface can be displayed more quickly, and the user experience is improved.
Other features of the present invention and advantages thereof will become apparent from the following detailed description of exemplary embodiments thereof, which proceeds with reference to the accompanying drawings.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description, serve to explain the principles of the invention.
Fig. 1 shows a flow diagram of a rendering method of a user interface according to an embodiment of the present disclosure.
Fig. 2 shows a schematic block diagram of a client device according to an embodiment of the present disclosure.
Fig. 3 shows a schematic block diagram of an electronic device according to an embodiment of the present disclosure.
Detailed Description
Various exemplary embodiments of the present invention will now be described in detail with reference to the accompanying drawings. It should be noted that: the relative arrangement of the components and steps, the numerical expressions and numerical values set forth in these embodiments do not limit the scope of the present invention unless specifically stated otherwise.
The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the invention, its application, or uses.
Techniques, methods, and apparatus known to those of ordinary skill in the relevant art may not be discussed in detail but are intended to be part of the specification where appropriate.
In all examples shown and discussed herein, any particular value should be construed as merely illustrative, and not limiting. Thus, other examples of the exemplary embodiments may have different values.
It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, further discussion thereof is not required in subsequent figures.
Various embodiments and examples according to the present disclosure are described below with reference to the drawings.
< method examples >
Fig. 1 shows a flow diagram of a rendering method of a user interface according to an embodiment of the present disclosure.
The rendering method of the user interface of the embodiment may be executed by a mobile terminal, such as an electronic device like a mobile phone or a tablet computer,
as shown in fig. 1, in step 1100, interface element data to be rendered of an interface to be displayed by an application program is obtained.
In one example, before acquiring interface element data to be rendered of an interface to be displayed by an application program, the mobile terminal needs to detect an operation of running the application program, which is input by a user. And responding to the operation of running the application program input by the user, and acquiring interface element data to be rendered of the interface to be displayed by the application program.
For example, a user clicks an icon of an application program, and after detecting an operation of running the application program input by the user, the mobile terminal acquires interface element data to be rendered, which is related to an interface to be displayed by the application program, in response to the operation of running the application program.
In another example, before acquiring the interface element data to be rendered of the interface to be displayed by the application program, the mobile terminal needs to detect an operation of opening the application interface, which is input by a user. And responding to the operation of opening the application interface input by the user, and acquiring interface element data to be rendered of the interface to be displayed of the application program.
For example, a user has clicked on a certain interface icon of an application in a display interface of the certain application. And after detecting the operation of opening the application interface corresponding to the interface icon and input by the user, the mobile terminal responds to the operation of opening the application interface and acquires the interface element data to be rendered related to the interface to be displayed.
Wherein the interface element data to be rendered at least comprises: interface element style, interface element size, interface element position, number of interface elements, and interface element type.
After acquiring the interface element data to be rendered of the interface to be displayed by the application program, the method proceeds to step 1200, and performs segmentation processing on the interface element data to be rendered.
It should be noted that, in the prior art, interface element data of an android system are in a tree relationship, and there are interface element data of a leaf type (also referred to as a leaf node) and interface element data of a branch type (also referred to as a branch node), and interface element data of one branch type may include interface element data of a plurality of leaf types and interface element data of a plurality of branch types.
In the existing rendering process, after the tree-like relationship of interface element data is determined, the interface element data of each leaf type is rendered sequentially by a thread starting from the interface element data of a root node. Since the root node checks whether the current thread is the main thread when rendering starts, and if the current thread is not the main thread, an exception is generated, which causes application crash, developers usually adopt various measures to ensure that rendering occurs in the main thread, that is, single-thread rendering is used.
In this example, the tree relationship of the interface element data needs to be determined first, but before rendering starts, part of the branch nodes and the root nodes are divided. Since the inspection of the thread only occurs at the root node, the segmented partial branch nodes can be out of the limit, rendered by other threads besides the main thread, and then "grafted" back to the root node. Therefore, the interface element data of the divided branch nodes can be distributed to a plurality of threads and rendered in parallel with the main thread, and multi-thread rendering is realized.
In an example, the interface element data to be rendered may be segmented according to a data type of the interface element data to be rendered. For example, the interface element data to be rendered corresponding to different functional modules have different data types, and in this example, the functional modules may be used as a partition to perform segmentation processing on the interface element data to be rendered.
In another example, the interface element data to be rendered may be further segmented according to the interface module type of the interface element data to be rendered. For example, the interface module types may include a title bar, intermediate content, and a toolbar, and the division process is performed for each interface module. Each list item may also be subject to a splitting process if the intermediate content is a list.
After the segmentation processing of the interface element data to be rendered is completed, step 1300 is performed, and the segmented interface element data to be rendered is distributed to a plurality of threads for rendering.
In an example, if interface element data to be rendered is segmented according to a data type of the interface element data to be rendered, in this step, the interface element data to be rendered of one data type may be correspondingly allocated to one thread; and then a plurality of threads run in parallel to render the interface element data to be rendered.
In another example, if interface element data to be rendered is segmented according to an interface module type of the interface element data to be rendered, in this step, the interface element data to be rendered of one interface module type may be correspondingly allocated to one thread; and then a plurality of threads run in parallel to render the interface element data to be rendered.
For example, an interface element data tree has 100 nodes, including a branch node and a leaf node. The completion of a single-threaded rendering using the prior art takes 100 milliseconds. By using the scheme of the embodiment, the 100 nodes are divided into 90 nodes, the 90 nodes are distributed to 9 threads, and the rendering is performed in parallel with the main thread, and under an ideal condition, the rendering can be completed only by 10 milliseconds. The time to complete the rendering is reduced by 90 milliseconds compared to the prior art.
In step 1400, the interface element data rendered by the multiple threads is merged and displayed.
In practical application, interface element data rendered by a plurality of threads is merged to the root of the interface element data tree according to the relationship among the nodes, and then the rendered interface element data tree is displayed.
According to the rendering method of the user interface, interface element data to be rendered of the interface to be displayed of the application program are obtained; carrying out segmentation processing on the interface element data to be rendered; distributing the segmented interface element data to be rendered to a plurality of threads for rendering; and merging the interface element data rendered by the multiple threads and then displaying. Therefore, the rendering of the interface element data to be rendered is completed by the multiple threads in parallel, the rendering time can be reduced, the user interface can be displayed to a user more quickly, and the user experience is improved.
< apparatus >
It will be understood by those skilled in the art that, in the electronic technology field, the method described above can be embodied in products by software, hardware and a combination of software and hardware, and those skilled in the art can easily generate a rendering device for a user interface based on the method disclosed above, the rendering device for the user interface including means for performing each operation in the rendering method for the user interface according to the above embodiments. For example, the apparatus comprises: the device comprises a device for acquiring interface element data to be rendered of an application program; the device is used for carrying out segmentation processing on the interface element data to be rendered according to a preset segmentation rule; the device is used for distributing the interface element data to be rendered after the segmentation of the segmentation unit to a plurality of threads for rendering; and the device is used for merging the interface element data which are rendered by the threads and then displaying the merged interface element data.
The device for performing segmentation processing on the interface element data to be rendered according to a preset segmentation rule is specifically configured to: and according to the data type of the interface element data to be rendered, carrying out segmentation processing on the interface element data to be rendered. Or, according to the interface module type of the interface element data to be rendered, performing segmentation processing on the interface element data to be rendered.
The device for distributing the interface element data to be rendered after being divided by the dividing unit to a plurality of threads for rendering is specifically configured to: distributing the interface element data to be rendered corresponding to one data type to one thread; and the multiple threads run in parallel to render the interface element data to be rendered. Or correspondingly distributing the interface element data to be rendered of one interface module type to one thread; and the multiple threads run in parallel to render the interface element data to be rendered.
Wherein the interface element data to be rendered at least comprises: interface element style, interface element size, interface element position, number of interface elements, and interface element type.
Further, the rendering device of the user interface may further include: means for detecting operation of a running application input by a user. And means for detecting an operation of opening the application interface input by the user.
It will be appreciated by those skilled in the art that the rendering device of the user interface may be implemented in various ways. For example, a rendering device of a user interface may be implemented by an instruction configuration processor. For example, the instructions may be stored in ROM and read from ROM into a programmable device when the device is started to implement a rendering device for a user interface. For example, the rendering device of the user interface may be solidified into a dedicated device (e.g., ASIC). The rendering devices of the user interface may be separated into mutually independent units or they may be implemented by being merged together. The rendering device of the user interface may be implemented by one of the various implementations described above, or may be implemented by a combination of two or more of the various implementations described above.
< client terminal device >
At least one embodiment according to the present disclosure may be implemented in a client device (or client application) such as an e-reader, a cell phone, a tablet, etc.
Fig. 2 shows a schematic block diagram of a client device according to an embodiment of the present disclosure. As shown in fig. 2, the client device 2000 includes a rendering apparatus 2010 of a user interface. The rendering apparatus 2010 of the user interface may be a rendering apparatus of a user interface according to the above-described embodiment.
Furthermore, as mentioned above, a client device may also be generated based on the method described above, which may be designed to perform the steps of the solution of the embodiment described with reference to fig. 1.
It is well known to those skilled in the art that with the development of electronic information technology such as large scale integrated circuit technology and the trend of software hardware, it has been difficult to clearly divide the software and hardware boundaries of a computer system. As any of the operations may be implemented in software or hardware. Execution of any of the instructions may be performed by hardware, as well as by software. Whether a hardware implementation or a software implementation is employed for a certain machine function depends on non-technical factors such as price, speed, reliability, storage capacity, change period, and the like. A software implementation and a hardware implementation are equivalent for the skilled person. The skilled person can choose software or hardware to implement the above described scheme as desired. Therefore, specific software or hardware is not limited herein.
< electronic apparatus >
Any of the above embodiments may be implemented in an electronic device such as a cell phone, tablet, e-reader, etc. For example, the electronic device may include the rendering device of the user interface in the above embodiment or include the client apparatus in the above embodiment.
Furthermore, fig. 3 shows a schematic block diagram of an electronic device according to an embodiment of the present disclosure. As shown in fig. 3, the electronic device 3000 may include a processor 3010, a memory 3020, an interface device 3030, a communication device 3040, a display device 3050, an input device 3060, a speaker 3070, a microphone 3080, and so forth.
The processor 3010 may be, for example, a Central Processing Unit (CPU), a Microprocessor (MCU), or the like. The memory 3020 includes, for example, a ROM (read only memory), a RAM (random access memory), a nonvolatile memory such as a hard disk, and the like. The interface device 3030 includes, for example, a USB interface, a headphone interface, and the like.
The communication device 3040 can perform wired or wireless communication, for example.
The display device 3050 is, for example, a liquid crystal display panel, a touch panel, or the like. The input device 3060 may include, for example, a touch screen, a keyboard, and the like. A user can input/output voice information through the speaker 3070 and the microphone 3080.
The electronic device shown in fig. 3 is merely illustrative and is in no way intended to limit the present invention, its application, or uses.
In this embodiment, the memory 3020 is configured to store instructions that, when executed by the electronic device 3000, control the processor 3010 to perform the operations of the rendering method for a user interface described above with reference to fig. 1. It should be understood by those skilled in the art that although a plurality of devices are shown in fig. 3, the present invention may relate to only some of the devices, such as the processor 3010 and the memory 3020. The skilled person can design the instructions according to the disclosed solution. How the instructions control the operation of the processor is well known in the art and will not be described in detail herein.
It is well known to those skilled in the art that with the development of electronic information technology such as large scale integrated circuit technology and the trend of software hardware, it has been difficult to clearly divide the software and hardware boundaries of a computer system. As any of the operations may be implemented in software or hardware. Execution of any of the instructions may be performed by hardware, as well as by software. Whether a hardware implementation or a software implementation is employed for a certain machine function depends on non-technical factors such as price, speed, reliability, storage capacity, change period, and the like. A software implementation and a hardware implementation are equivalent for the skilled person. The skilled person can choose software or hardware to implement the above described scheme as desired. Therefore, specific software or hardware is not limited herein.
The present invention may be an apparatus, method and/or computer program product. The computer program product may include a computer-readable storage medium having computer-readable program instructions embodied therewith for causing a processor to implement various aspects of the present invention.
The computer readable storage medium may be a tangible device that can hold and store the instructions for use by the instruction execution device. The computer readable storage medium may be, for example, but not limited to, an electronic memory device, a magnetic memory device, an optical memory device, an electromagnetic memory device, a semiconductor memory device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a Static Random Access Memory (SRAM), a portable compact disc read-only memory (CD-ROM), a Digital Versatile Disc (DVD), a memory stick, a floppy disk, a mechanical coding device, such as punch cards or in-groove projection structures having instructions stored thereon, and any suitable combination of the foregoing. Computer-readable storage media as used herein is not to be construed as transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission medium (e.g., optical pulses through a fiber optic cable), or electrical signals transmitted through electrical wires.
The computer-readable program instructions described herein may be downloaded from a computer-readable storage medium to a respective computing/processing device, or to an external computer or external storage device via a network, such as the internet, a local area network, a wide area network, and/or a wireless network. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. The network adapter card or network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in the respective computing/processing device.
The computer program instructions for carrying out operations of the present invention may be assembler instructions, Instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer-readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider). In some embodiments, aspects of the present invention are implemented by personalizing an electronic circuit, such as a programmable logic circuit, a Field Programmable Gate Array (FPGA), or a Programmable Logic Array (PLA), with state information of computer-readable program instructions, which can execute the computer-readable program instructions.
Aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer-readable program instructions.
These computer-readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer-readable program instructions may also be stored in a computer-readable storage medium that can direct a computer, programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer-readable medium storing the instructions comprises an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus or other devices implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions. It is well known to those skilled in the art that implementation by hardware, by software, and by a combination of software and hardware are equivalent.
Having described embodiments of the present invention, the foregoing description is intended to be exemplary, not exhaustive, and not limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen in order to best explain the principles of the embodiments, the practical application, or improvements made to the technology in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein. The scope of the invention is defined by the appended claims.
Claims (11)
1. A method of rendering a user interface, comprising:
acquiring interface element data to be rendered of an interface to be displayed by an application program;
carrying out segmentation processing on the interface element data to be rendered;
distributing the segmented interface element data to be rendered to a plurality of threads for rendering;
and merging the interface element data rendered by the multiple threads and then displaying.
2. The method according to claim 1, wherein the performing the segmentation processing on the interface element data to be rendered comprises:
and according to the data type of the interface element data to be rendered, carrying out segmentation processing on the interface element data to be rendered.
3. The method according to claim 2, wherein the allocating the partitioned interface element data to be rendered to a plurality of threads for rendering comprises:
correspondingly distributing the interface element data to be rendered of one data type to one thread;
and the multiple threads run in parallel to render the interface element data to be rendered.
4. The method according to claim 1, wherein the performing the segmentation processing on the interface element data to be rendered comprises:
and according to the interface module type of the interface element data to be rendered, carrying out segmentation processing on the interface element data to be rendered.
5. The method according to claim 4, wherein the allocating the partitioned interface element data to be rendered to a plurality of threads for rendering comprises:
correspondingly distributing the interface element data to be rendered of one interface module type to one thread;
and the multiple threads run in parallel to render the interface element data to be rendered.
6. The method of claim 1, wherein the interface element data to be rendered comprises at least: interface element style, interface element size, interface element position, number of interface elements, and interface element type.
7. The method of claim 1, wherein before obtaining the interface element data to be rendered of the application program, the method further comprises:
an operation of running an application input by a user is detected.
8. The method of claim 1, wherein before obtaining the interface element data to be rendered of the application program, the method further comprises:
and detecting an operation of opening the application interface input by the user.
9. A rendering apparatus of a user interface, characterized by comprising:
the device comprises a device for acquiring interface element data to be rendered of an application program;
the device is used for carrying out segmentation processing on the interface element data to be rendered according to a preset segmentation rule;
the device is used for distributing the interface element data to be rendered after the segmentation of the segmentation unit to a plurality of threads for rendering;
and the device is used for merging the interface element data which are rendered by the threads and then displaying the merged interface element data.
10. A client device characterized by comprising a rendering apparatus of a user interface according to any one of claims 7 to 9, or designed to perform operations in a rendering method of a user interface according to any one of claims 1 to 6.
11. An electronic device, characterized by comprising the client apparatus of claim 10; alternatively, the electronic device comprises a memory for storing instructions and a processor; the instructions are for controlling the processor to operate so as to perform a method of rendering a user interface as claimed in any one of claims 1 to 6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810827100.XA CN110764849A (en) | 2018-07-25 | 2018-07-25 | Rendering method and device for user interface, client device and electronic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810827100.XA CN110764849A (en) | 2018-07-25 | 2018-07-25 | Rendering method and device for user interface, client device and electronic device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110764849A true CN110764849A (en) | 2020-02-07 |
Family
ID=69327277
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810827100.XA Pending CN110764849A (en) | 2018-07-25 | 2018-07-25 | Rendering method and device for user interface, client device and electronic device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110764849A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113360708A (en) * | 2021-05-31 | 2021-09-07 | 北京达佳互联信息技术有限公司 | Video playing method and device, electronic equipment and storage medium |
CN116880740A (en) * | 2023-09-06 | 2023-10-13 | 深圳硬之城信息技术有限公司 | Method, device and storage medium for rendering table scrolling |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010165220A (en) * | 2009-01-16 | 2010-07-29 | Uchida Yoko Co Ltd | Real-time rendering system and real-time rendering method |
CN102722549A (en) * | 2012-05-28 | 2012-10-10 | 中国科学院遥感应用研究所 | Cluster-based real-time rendering service of remote sensing data set |
CN104881320A (en) * | 2015-05-22 | 2015-09-02 | 北京京东尚科信息技术有限公司 | Scalable text generation method |
CN106354512A (en) * | 2016-09-08 | 2017-01-25 | 广州华多网络科技有限公司 | User interface rendering method and device thereof |
CN106802924A (en) * | 2016-12-19 | 2017-06-06 | 北京科胜永昌软件有限公司 | The cautious data of magnanimity observation system big gun based on multi-threaded parallel draw display methods |
CN107479898A (en) * | 2017-08-28 | 2017-12-15 | 荆门程远电子科技有限公司 | A kind of system architecture of the three-dimensional earth based on mobile platform |
-
2018
- 2018-07-25 CN CN201810827100.XA patent/CN110764849A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010165220A (en) * | 2009-01-16 | 2010-07-29 | Uchida Yoko Co Ltd | Real-time rendering system and real-time rendering method |
CN102722549A (en) * | 2012-05-28 | 2012-10-10 | 中国科学院遥感应用研究所 | Cluster-based real-time rendering service of remote sensing data set |
CN104881320A (en) * | 2015-05-22 | 2015-09-02 | 北京京东尚科信息技术有限公司 | Scalable text generation method |
CN106354512A (en) * | 2016-09-08 | 2017-01-25 | 广州华多网络科技有限公司 | User interface rendering method and device thereof |
CN106802924A (en) * | 2016-12-19 | 2017-06-06 | 北京科胜永昌软件有限公司 | The cautious data of magnanimity observation system big gun based on multi-threaded parallel draw display methods |
CN107479898A (en) * | 2017-08-28 | 2017-12-15 | 荆门程远电子科技有限公司 | A kind of system architecture of the three-dimensional earth based on mobile platform |
Non-Patent Citations (2)
Title |
---|
TOSHI KATO: ""Kilauea"––parallel global illumination renderer", 《PARALLEL COMPUTING》 * |
王灿运等: "一种虚拟现实应用程序跨平台方法的研究", 《智能计算机与应用》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113360708A (en) * | 2021-05-31 | 2021-09-07 | 北京达佳互联信息技术有限公司 | Video playing method and device, electronic equipment and storage medium |
CN116880740A (en) * | 2023-09-06 | 2023-10-13 | 深圳硬之城信息技术有限公司 | Method, device and storage medium for rendering table scrolling |
CN116880740B (en) * | 2023-09-06 | 2024-01-02 | 深圳硬之城信息技术有限公司 | Method, device and storage medium for rendering table scrolling |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108924029B (en) | Method and device for sending customer service data | |
CN109634599B (en) | Page view display method, device, equipment and storage medium | |
US20190278431A1 (en) | Window control for simultaneously running applications | |
CN107203425B (en) | Switching method and device of light application and electronic device | |
CN108449255B (en) | Comment interaction method and equipment, client device and electronic equipment | |
US9037994B2 (en) | Navigation to a data definition in a diff context | |
CN110290058B (en) | Method and equipment for presenting session message in application | |
CN110764849A (en) | Rendering method and device for user interface, client device and electronic device | |
EP3407186A1 (en) | Interface refresh synchronization method and apparatus, terminal, and storage medium | |
CN111459581B (en) | Page switching method, device, electronic equipment and computer readable medium | |
CN111125480A (en) | Background music playing method and equipment, client device and electronic equipment | |
CN111158802B (en) | Audio playing method, equipment, client device and electronic equipment | |
US20210026913A1 (en) | Web browser control feature | |
US11157138B2 (en) | Thumbnail generation for digital images | |
CN111104545A (en) | Background music configuration method and equipment, client device and electronic equipment | |
CN105573705A (en) | Display control method and terminal | |
CN111506848A (en) | Webpage processing method, device, equipment and readable storage medium | |
US10732794B2 (en) | Methods and systems for managing images | |
CN104808895A (en) | Icon arranging method | |
CN110764681A (en) | Application interface display method and device, client device and electronic device | |
US9477448B2 (en) | Screen-oriented computing program refactoring | |
US9069562B2 (en) | Mobile computing program slicing and behavior | |
CN111158678B (en) | Video playing method and device, client device and electronic device | |
CN111104544A (en) | Background music recommendation method and equipment, client device and electronic equipment | |
CN110704141A (en) | Page switching method and device and electronic equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200527 Address after: 310051 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province Applicant after: Alibaba (China) Co.,Ltd. Address before: 100083, Beijing, Haidian District, Cheng Fu Road, No. 28, A building, block 12 Applicant before: UC MOBILE Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200207 |
|
RJ01 | Rejection of invention patent application after publication |