Display method of interface and vehicle

CN122976309APending Publication Date: 2026-10-27GREAT WALL MOTOR CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611456476.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-09-18
Publication Date
2026-10-27

AI Technical Summary

Technical Problem

在按照上述翻页方式进行翻页时容易导致内容遗漏,导致用户浏览体验不佳

Benefits of technology

对目标比值进行向下取整处理,得到目标滚动行数。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122976309A_ABST
    Figure CN122976309A_ABST
Patent Text Reader

Abstract

The application provides a display method of an interface and a vehicle. The method relates to the field of intelligent cockpits. The method comprises the following steps: in response to a target scrolling instruction, determining an anchor list item in a list visible area and a target scrolling row number, displaying at least one list item in a target list in the list visible area, and the anchor list item is used for indicating a reference scrolling position corresponding to the target scrolling instruction; taking the anchor list item as a starting position, traversing a list item adjacent to the anchor list item to obtain an accumulated width of the list item; obtaining a row count value based on the accumulated width of the list item and a row width of the list visible area, and determining a target list item as the list item currently traversed when the row count value reaches the target scrolling row number; and controlling the target list to scroll based on the target list item, and displaying the target list after scrolling in the list visible area. The method can avoid missing display content in a page turning scene and improve user browsing experience.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of smart cockpits, and more specifically, to a method for displaying an interface and a vehicle in the field of smart cockpits. Background Technology

[0002] With the development of technology, vehicles are offering more and more functions to meet the growing needs of users. Currently, the "see and speak" functionality of smart cockpits is widespread, allowing users to control vehicle cockpit functions via voice commands. However, when displaying grid lists on the in-vehicle display interface, these lists often exhibit patterns such as entire rows being filled or mixed columns being displayed, resulting in an inconsistent number of list items in different logical rows. Yet, page turning is typically controlled by a fixed number of items, a fixed number of rows, or a fixed pixel distance. Using these page turning methods can easily lead to missed content, resulting in a poor user browsing experience.

[0003] Therefore, in page-turning scenarios, how to avoid missing content and improve the user browsing experience is a technical problem that urgently needs to be solved. Summary of the Invention

[0004] This application provides a method for displaying an interface that can prevent content omissions in page-turning scenarios and improve the user browsing experience.

[0005] Firstly, a method for displaying an interface is provided, which includes: In response to a target scroll command, the anchor list item and the target scroll row number in the list view area are determined, and at least one list item in the target list is displayed in the list view area. The anchor list item is used to indicate the reference scroll position corresponding to the target scroll command. Starting from the anchor list item, iterate through the list items adjacent to the anchor list item to obtain the cumulative width of the list items; The row count is obtained based on the cumulative width of the list items and the row width of the visible area of ​​the list. When the row count reaches the target number of scroll rows, the currently traversed list item is determined as the target list item. The scrolling of the target list is controlled based on the target list items, and the scrolled target list is displayed in the visible area of ​​the list.

[0006] In the embodiments of this application, compared with the problems of skipping lines and deviation of landing points caused by the variable number of items per row in the prior art, this solution traverses from the anchor list item. First, it obtains a row count value based on the cumulative width of the list item and the row width of the visible list area. When the row count value reaches the target scrolling row number, the currently traversed list item is determined as the target list item. Therefore, in the process of determining the target list item, the boundary of each row can be identified and a row count value generated by comparing the cumulative width with the row width of the visible list area. Combined with the target scrolling row number, the number of traversed rows can be counted, thereby ensuring that the target list item is located at the scrolling position corresponding to the target scrolling row number. Scrolling is performed based on the target list item, ensuring accurate landing points during page turning. Therefore, this solution can achieve accurate row-by-row page turning in mixed grid lists, ensuring accurate landing points of target list items, avoiding omissions in displayed content, and thus improving the user's browsing experience.

[0007] In conjunction with the first aspect, in some possible implementations, the row count value is obtained based on the cumulative width of the list items and the row width of the list's visible area, including: When the cumulative width of the list items reaches the row width of the list's visible area, update the row count and clear the cumulative width.

[0008] In the embodiments of this application, the cumulative width of the list items is detected in real time during the traversal process. When the cumulative width reaches the row width of the visible area of ​​the list, the row count value is updated and the cumulative width is cleared. Since the cumulative width reaching the row width indicates the complete closure of a logical row, the increment of the row count value and the clearing of the cumulative width can accurately record the number of rows traversed in units of logical rows. This avoids the row count deviation caused by page turning according to a fixed number of items in related technologies. Therefore, it can ensure that in a mixed grid with a variable number of items per row, when the row count value accumulated during traversal reaches the target scroll row number, the currently traversed list item is determined as the target list item. The target list item falls exactly at the end of the row of the target scroll row number. Page turning according to the target list item can achieve accurate page turning by row, ensuring that the target list item is fully displayed and the landing point is correct, thereby improving the user's browsing experience.

[0009] In conjunction with the first aspect, among some possible implementations, the method also includes: Get the height of each logical row that has been traversed, where the height of a logical row is the maximum height of the list items within that logical row; Sum the heights of all the logical rows that have been traversed to obtain the cumulative height; The row count is calculated based on the cumulative width of the list items and the row width of the list's visible area. When the row count reaches the target number of scroll rows, the currently traversed list item is identified as the target list item, including: When the row count reaches the target number of scroll rows and the cumulative height does not exceed the height of the visible area of ​​the list, the currently traversed list item is determined as the target list item.

[0010] In the embodiments of this application, since the height of each logical row is the maximum value of the height of each list item in that row, it can reflect the actual height occupied by the logical row in the vertical direction. Furthermore, by comparing the cumulative height with the height of the visible area of ​​the list, it can be ensured that the logical rows that have been traversed after page turning do not exceed the visible area in the vertical direction. This avoids blank or half-line appearances in the visible area after page turning in mixed layout scenarios with large differences in row height, further improving the visual effect of page turning and the user's browsing experience.

[0011] Combining the first aspect and the above implementation methods, some possible implementation methods also include: Based on the target scrolling command, the target scrolling direction is determined, which includes scrolling upwards and scrolling downwards; Starting from the anchor list item, iterate through the list items adjacent to the anchor list item to obtain the cumulative width of the list items, including: Starting from the anchor list item, traverse the list items adjacent to the anchor list item along the target scroll direction to obtain the cumulative width of the list items.

[0012] In the embodiments of this application, the target scrolling direction is determined based on the target scrolling instruction, and the cumulative width is obtained by traversing adjacent list items along the target scrolling direction starting from the anchor list item. Since the anchor list item provides the reference scrolling position, traversing according to the target scrolling direction obtained based on the target scrolling instruction ensures that the identification order of each logical row during the traversal matches the page turning direction, avoiding incorrect page turning caused by unclear direction or inconsistency between the traversal path and the page turning direction. This ensures that the list items corresponding to the target scrolling row number are accurately accumulated in the target scrolling direction, thereby ensuring the accurate positioning of the target list items, improving the accuracy of page turning and the user's browsing experience.

[0013] Combining the first aspect and the above implementation methods, some possible implementation methods also include: Determine the visibility status of anchor list items. Visibility status indicates whether the content in the anchor list item is fully displayed within the list's visible area. If the content of the anchor list item is not fully displayed within the visible area of ​​the list, update the anchor list item based on the target scroll direction corresponding to the target scroll instruction.

[0014] In the embodiments of this application, by determining the visibility state of anchor list items and updating them based on the target scrolling direction when the content of the anchor list item is not fully displayed within the visible area of ​​the list, the accuracy of the page-turning starting point is affected by whether the anchor list item, as the reference scrolling position corresponding to the target scrolling instruction, is fully displayed. When the anchor list item is not fully displayed, it indicates that the logical row where the current reference position is located is in a clipped state. If the incompletely displayed list item is directly used as the traversal starting point, the undisplayed part of the row will be missed. This solution, by detecting the visibility state of the anchor list item and updating it when it is not fully displayed, adjusts the page-turning starting point to the fully visible adjacent logical row. This avoids the problem of skipping or missing rows caused by edge list items being incorrectly included in the page-turning range due to clipping in the prior art. Therefore, it can ensure the accuracy of the page-turning reference position, thereby ensuring that each row is fully viewed during the row-by-row page-turning process, improving the user experience.

[0015] Combining the first aspect and the above implementation methods, in some possible implementation methods, the anchor point list items are updated based on the target scroll direction corresponding to the target scroll instruction, including: When the target scrolling direction is downward, the anchor list item is updated to the list item located at the end of the first logical row. The first logical row is the adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction to the target scrolling direction. When the target scrolling direction is upward, the anchor list item is updated to the list item at the beginning of the second logical row. The second logical row is the adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction to the target scrolling direction.

[0016] In the embodiments of this application, by determining the visibility state of the anchor list item, and when the content of the anchor list item is not fully displayed in the visible area of ​​the list, the anchor list item is updated to a list item whose adjacent complete logical row is located at the end of the row or at the beginning of the row in the opposite direction based on the target scrolling direction. Because the bottom row is cropped at the edge of the list's visible area when scrolling down, updating the anchor point to the end of the previous complete logical row ensures that page navigation starts from the last row that has been fully viewed, avoiding skipping content from incomplete rows. Similarly, when scrolling up, the top row is cropped at the edge of the list's visible area, and updating the anchor point to the beginning of the next complete logical row ensures that page navigation starts from the last row that has been fully viewed, again avoiding skipping content from incomplete rows. Therefore, this solution updates the anchor list item to the end or beginning of the adjacent complete logical row in the opposite direction based on the target scrolling direction. This ensures that all list items are fully viewed during page navigation, avoiding the missing row problem caused by edge cropping in related technologies, thereby further improving the accuracy of page navigation and the user's browsing experience.

[0017] Combining the first aspect and the above implementation methods, some possible implementation methods also include: Get the top and bottom boundary positions of the anchor list items, as well as the top and bottom boundary positions of the visible area of ​​the list; Determine the visibility status of anchor list items, including: When the top and bottom edges of an anchor list item are both between the top and bottom edges of the list's visible area, the visibility status is determined to indicate that the content of the anchor list item is fully displayed within the list's visible area. If at least one of the upper and lower boundary positions of the anchor list item is not between the upper and lower boundary positions of the list's visible area, the visibility status is determined to indicate that the content of the anchor list item is not fully displayed within the list's visible area.

[0018] In the embodiments of this application, the visibility state of the anchor list item is determined by obtaining the upper and lower boundary positions of the anchor list item, as well as the upper and lower boundary positions of the visible area of ​​the list, and comparing these boundary positions. Since the upper and lower boundary positions of the anchor list item can accurately reflect the actual display area of ​​the list item on the screen, comparing them with the boundary positions of the visible area of ​​the list can accurately identify partially exposed list items and trigger the anchor list item update. This provides an accurate basis for subsequent determination of the visibility state of the anchor list item, thereby ensuring the accuracy of the page turning reference position and improving the reliability of page turning and the user's browsing experience.

[0019] In conjunction with the first aspect, among some possible implementations, the method also includes: Get the area of ​​the overlapping region between the anchor list item and the visible area of ​​the list; Determine the visibility status of anchor list items, including: The visibility status of anchor list items is determined based on the target ratio of the area of ​​the overlapping region to the area of ​​the anchor list item.

[0020] In the embodiments of this application, the area of ​​the overlapping area between the anchor list item and the visible area of ​​the list is obtained, and the visibility state of the anchor list item is determined based on the target ratio between the area of ​​the overlapping area and the area of ​​the anchor list item. Since the target ratio can directly reflect the visibility of the anchor list item within the visible area of ​​the list, it can avoid the switching between fully displayed and partially displayed states due to slight deviations in the boundary position, prevent unnecessary anchor update operations, and thus improve the stability of the page turning process and the user's browsing experience while ensuring the accuracy of the visibility state judgment.

[0021] In conjunction with the first aspect, in some possible implementations, the visibility state of an anchor list item is determined based on a target ratio between the area of ​​the overlapping region and the area of ​​the anchor list item, including: When the target ratio is greater than or equal to the preset ratio, the content of the visible status indicator anchor list item is fully displayed within the visible area of ​​the list. When the target ratio is less than the preset ratio, it is determined that the content of the visible status indicator anchor list item is not fully displayed in the visible area of ​​the list.

[0022] In the embodiments of this application, when the target ratio is greater than or equal to the preset ratio, it is determined that the content of the anchor list item is fully displayed within the visible area of ​​the list. When the target ratio is less than the preset ratio, it is determined that the content of the anchor list item is not fully displayed within the visible area of ​​the list. Since the preset ratio can be dynamically set according to actual needs, the visibility status of the anchor list item can be determined, avoiding misjudgment of the visibility status due to slight deviations in the boundary position or rendering errors. This further improves the accuracy of the visibility status determination and the reliability of the page turning process, reduces unnecessary anchor update operations, and improves the user's browsing experience.

[0023] Combining the first aspect and the above implementation methods, some possible implementation methods also include: Get the height of the visible area of ​​the list and the height of each logical row in the target list; The target ratio is obtained based on the height of the visible area of ​​the list and the height of each logical row in the target list; The target ratio is rounded down to obtain the target number of scroll rows.

[0024] In the embodiments of this application, the target number of scroll rows is obtained by obtaining the height of the list's visible area and the height of the logical rows in the target list, and then rounding down the ratio of the list's visible area height to the logical row height in the target list. Since the target number of scroll rows indicates the number of logical rows expected to be moved in one page turn, and the ratio of the list's visible area height to the logical row height reflects the number of logical rows that can be fully displayed within the list's visible area, determining the target number of scroll rows based on this ratio ensures that the target number of scroll rows matches the display capacity of the list's visible area. Because of the rounding down operation, it ensures that all logical rows corresponding to the target number of scroll rows can be fully displayed within the list's visible area, avoiding the problem of some rows being truncated or skipped due to an excessively large target number of scroll rows, thus improving the accuracy of page turning and the user's browsing experience.

[0025] Combining the first aspect and the above implementation methods, some possible implementation methods also include: When the cumulative width of a list item exceeds the line width of the visible list area, the currently traversed list item is determined as the list item at the beginning of the next logical line, and a placeholder is set at the currently traversed position.

[0026] In the embodiments of this application, when the cumulative width of a list item is detected to exceed the row width of the visible area of ​​the list during traversal, the currently traversed list item is determined as the list item at the beginning of the next logical row, and a placeholder is set at the currently traversed position. Since the cumulative width exceeds the row width, it means that the currently traversed list item can no longer be fully contained in the current logical row. By moving the list item to the next logical row and setting a placeholder, the end boundary of the current logical row can be accurately defined, further improving the accuracy of page turning and the stability of list scrolling.

[0027] Secondly, a display device for an interface is provided, the device comprising: The processing module, in response to a target scroll command, determines the anchor list item and the target scroll row number in the visible list area. At least one list item from the target list is displayed in the visible list area. The anchor list item indicates the baseline scroll position corresponding to the target scroll command. Starting from the anchor list item, the module traverses the list items adjacent to it to obtain the cumulative width of the list items. Based on the cumulative width of the list items and the row width of the visible list area, a row count value is obtained. When the row count value reaches the target scroll row number, the currently traversed list item is determined as the target list item. The module controls the scrolling of the target list based on the target list item, and displays the scrolled target list in the visible list area.

[0028] It should be understood that the extensions, limitations, explanations and descriptions of the relevant content in the first aspect above also apply to the same content in the second aspect.

[0029] Thirdly, a vehicle is provided, including a memory and a processor; the memory is used to store executable program code, and the processor is used to call and run the executable program code from the memory, causing the vehicle to execute the interface display method in the first aspect or any possible implementation of the first aspect.

[0030] Fourthly, a computer program product is provided, comprising: computer program code, which, when run on a computer, causes the computer to execute the interface display method in the first aspect or any possible implementation thereof.

[0031] Fifthly, a computer-readable storage medium is provided that stores computer program code, which, when executed on a computer, causes the computer to perform the interface display method described in the first aspect or any possible implementation thereof. Attached Figure Description

[0032] Figure 1 This is a schematic diagram of a method for displaying an interface in the first prior art provided in this application embodiment; Figure 2 This is a schematic diagram of a second prior art interface display method provided in the embodiments of this application; Figure 3 This is a schematic diagram of a third prior art interface display method provided in the embodiments of this application; Figure 4 This is a schematic flowchart illustrating a method for displaying an interface according to an embodiment of this application; Figure 5 This is a schematic diagram illustrating the effect of the interface display method provided in the embodiments of this application; Figure 6 This is a schematic flowchart illustrating another method for displaying an interface provided in an embodiment of this application; Figure 7 This is a schematic diagram of the structure of an interface display device provided in an embodiment of this application; Figure 8 This is a schematic diagram of the structure of a vehicle provided in an embodiment of this application. Detailed Implementation

[0033] The technical solutions in this application will be clearly and thoroughly described below with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B. "And / or" in the text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, in the description of the embodiments of this application, "multiple" refers to two or more than two.

[0034] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature.

[0035] Before introducing the methods of the embodiments of this application, the technical terms that may be involved in the embodiments of this application will be explained first.

[0036] List view area: also known as list viewport or list display window, refers to the area of ​​the target list that is currently visible on the display interface, that is, the area on the vehicle display screen where the list is displayed.

[0037] It should be understood that in front-end frameworks, the visible area of ​​a list can be set by setting a container, and the height of the visible area of ​​the list can be set by presetting the height of the container.

[0038] Anchor point list item: also known as baseline list item, reference list item, or positioning list item, is used to indicate the baseline scroll position corresponding to the target scroll command.

[0039] For example, the anchor list item can be a list item determined from the list's visible area and used as the starting point for page turning. Specifically, it can be a list item located at the beginning or end of the line in the logical row to which the edge list item belongs along the target scrolling direction in the list's visible area.

[0040] Logical row: also known as virtual row, calculated row, or layout row, is used to represent a row in the target list that is divided according to the actual width occupied by the list items.

[0041] For example, in a grid list mixed layout, each list item has a number of columns occupied. When the sum of the number of columns occupied by each list item in a row is equal to the maximum number of columns that the target list is divided into horizontally, the row is closed into a logical row.

[0042] Placeholder: Also known as placeholder mark, truncation mark, or line end identifier, it is used to identify the truncation position of a logical line when it exceeds the line width of the visible area of ​​the list, or to indicate that the current logical line is truncated when it exceeds the target width.

[0043] For example, during the traversal, when the cumulative width of the list items exceeds the row width of the visible area of ​​the list, a placeholder is set at the currently traversed position to mark the end boundary of the logical row, and the currently traversed list item is determined as the head list item of the next logical row.

[0044] Clipping Re-anchoring: Also known as re-anchoring or anchor point correction, it is a process used to update the anchor list item based on the target scrolling direction when the content of the anchor list item is not fully displayed within the visible area of ​​the list.

[0045] For example, when scrolling down, if an anchor list item is truncated, the anchor list item is updated to the end list item of the previous complete logical line; when scrolling up, if an anchor list item is truncated, the anchor list item is updated to the beginning list item of the next complete logical line.

[0046] Target number of scroll rows: also known as page turn row count, scroll row step, or target number of rows, it represents the logical number of rows expected to be moved in one page turn.

[0047] For example, the target number of scrolling rows can be obtained by rounding down the ratio of the height of the list's visible area to the height of the logical rows in the target list, or it can be a pre-configured fixed row number step.

[0048] When displaying a function list on a car's multimedia screen, if some function lists contain many items, scrolling up and down is required to view the entire list. However, while the user is driving, directly scrolling up and down on the screen can distract the driver and compromise driving safety.

[0049] Currently, the "see it, say it" functionality in smart cockpits provides users with great convenience, allowing them to control vehicle cockpit functions via voice commands while driving. Therefore, in the scenario described above, when a user needs to view other items in a list, they can use voice commands to control the list's scrolling up and down.

[0050] A list, also known as a grid list, typically refers to a list format arranged vertically and divided into multiple columns horizontally. The list items are distributed across a grid of columns according to preset layout rules. Grid lists can be used in scenarios such as application lists and quick access points in in-vehicle display interfaces. In a grid list, each list item has a corresponding number of columns it occupies, which indicates the number of columns that item occupies horizontally. For example, a regular icon might occupy one column, while an item spanning multiple columns might occupy two or more. The number of columns occupied when an entire row is filled is equal to the maximum number of columns the grid list can be divided into horizontally.

[0051] When the number of items in the grid list in the vehicle display interface is too large to be displayed all at once within the visible area, the user needs to scroll to view other items in the list.

[0052] Scrolling refers to controlling the grid list to move vertically, so that list items that were originally outside the list's visible area can be displayed within the list's visible area.

[0053] For example, users can trigger page turning operations through voice commands, such as issuing a "next page" voice command to control the grid list to turn down; or issuing a "previous page" voice command to control the grid list to turn up.

[0054] In related technologies, list scrolling is generally controlled in the following three ways: The first method involves, after receiving a voice command, determining the number N of list items to be scrolled (N can be dynamically estimated based on the number of list items currently displayed in the visible area of ​​the list), then adding or subtracting N from the index of the edge list items in the visible area of ​​the list before scrolling to obtain the index of the target list item, and then controlling the list to scroll to that target list item.

[0055] The second method involves pre-setting a fixed number of rows to scroll each time, and multiplying the fixed number of rows by the maximum number of columns in the grid to obtain the item number step size. After receiving a voice command, the target list item number is determined according to the item number step size, and then the list is controlled to scroll to that target list item.

[0056] The third method involves pre-setting the pixel increment for each scroll. Upon receiving a voice command, the control list scrolls according to this pixel increment.

[0057] The following provides an example illustration of the scrolling effects of these three methods.

[0058] For example, Figure 1 This is a schematic diagram of a first-class prior art interface display method provided in this application embodiment. For example... Figure 1 As shown, Figure 1(a) includes target lists 100, 101 and 102, where 101 is used to represent the visible area of ​​the list and 102 is used to represent the anchor list item. Target list 100 includes list item 1 to list item 14, a total of 14 list items. Figure 1 (a) shows the display effect of the visible area of ​​the list before scrolling. Figure 1 (b) shows the display effect of the list's visible area after scrolling.

[0059] like Figure 1 As shown in (a), upon receiving the user's scroll-down command, before controlling the target list 100 to scroll, list items 1 to 6 are displayed in the visible area of ​​the list, where list item 6 is the last item in the visible area. Currently, it is in a high-density area (3 items per row), and the dynamically estimated item count step size is 6. Therefore, the target list is controlled to scroll 6 list items, and the scroll stop position is determined to be list item 12. Thus, the target list can be controlled to scroll down 6 list items until list item 12 is reached.

[0060] like Figure 1 As shown in (b), after the scrolling operation is completed, the visible area of ​​the list displays list items 9 to 14, including list item 12. Since the middle list items 7 and 8 are completely filled when scrolling from list item 6 to list item 12, that is, there is only one item per row, the item number step 6 spans one row for each step in the low-density area, while it spans one row for every three steps in the high-density area. This results in a large number of rows being actually spanned, and the content of list item 7 and list item 8 is skipped, so the user cannot fully browse the content of the middle row.

[0061] above Figure 1 This explanation addresses the scenario where all list items are fully displayed in the visible area before scrolling. However, when some list items are not fully displayed in the visible area, scrolling using the first method described above still presents certain problems.

[0062] For example, Figure 2 This is a schematic diagram of a second prior art interface display method provided in the embodiments of this application. Figure 2 (a) includes target lists 200, 201 and 202, where 201 is used to represent the visible area of ​​the list and 202 is used to represent the anchor list item. Target list 200 includes list item 1 to list item 12. Figure 2 (a) shows the display effect of the visible area of ​​the list before scrolling, such as... Figure 2 (b) shows the display effect of the visible area of ​​the list after scrolling.

[0063] like Figure 2As shown in (a), before scrolling, the visible list area displays the full content of list items 1, 2, and 3, and partial content of list items 4, 5, and 6. The anchor list item in the visible list area is the last displayed list item, i.e., list item 6. Assuming that each page turn flips by a fixed 1 line, and each line in the target list 200 has 3 items, then the item step size is equal to the product of the number of pages flipped and the number of items per line, i.e., 3 items. Since the current anchor list item is list item 6, the cutoff list item can be determined to be list item 9.

[0064] It should be understood that in this interface display method, a fixed number of rows *r* is used as the page turning step, and then the number of rows is converted into an item number step before page turning is performed by item number. Assuming that the number of items in each logical row of the target list is a fixed value *C* (C can be the maximum number of columns in the grid), the item number step is calculated according to the following formula: Δ B =r C, where Δ B The step size is used to represent the number of items, r represents the fixed page-turning step size, and C represents the number of items in each logical row; T B =A±Δ B Where A is the item number of the anchor list item, Δ B T is used to indicate the step size of the number of terms. B Used to indicate the target list item to which you page from the anchor list item.

[0065] like Figure 2 As shown in (b), after scrolling down three list items, the visible area displays partial content of list items 4, 5, and 6, as well as the full content of list items 7, 8, and 9. In other words, if a list item is cropped and displayed across multiple pages before scrolling, the remaining content of that list item is not displayed after scrolling and is skipped. Therefore, in this case, the user cannot fully view the content of list items 4, 5, and 6, resulting in a poor browsing experience.

[0066] Therefore, this pagination method cannot identify whether the edge list items are fully visible, and if the number of items per row in the target list is not fixed, it may cause the actual number of rows skipped to exceed the target number of rows. Therefore, it cannot guarantee that the row will be fully viewed and the landing point will be accurate when paginating by row.

[0067] For example, Figure 3 This is a schematic diagram of a third prior art interface display method provided in this application embodiment. For example... Figure 3 As shown, Figure 3 (a) includes target lists 300, 301 and 302, where 301 is used to represent the visible area of ​​the list and 302 is used to represent the anchor list item. Target list 300 includes list item 1 to list item 12, a total of 12 list items. Figure 3(a) shows the display effect of the visible area of ​​the list before scrolling. Figure 3 (b) shows the display effect of the list's visible area after scrolling.

[0068] like Figure 3 As shown in (a), before scrolling, the list's visible area displays the full contents of list items 1, 2, and 3, as well as a portion of list items 4, 5, and 6.

[0069] like Figure 3 As shown in (b), scrolling at a fixed pixel distance displays partial content of list items 4, 5, and 6, and full content of list items 7, 8, and 9 within the visible area of ​​the list. In other words, if a list item is cropped and displayed across multiple pages before scrolling, the remaining content of that list item is not displayed after scrolling and is skipped. Therefore, in this case, the user cannot fully view the content of list items 4, 5, and 6, resulting in a poor browsing experience.

[0070] Therefore, this page-turning method uses a fixed pixel distance for scrolling. During the scrolling process, it cannot guarantee that the boundaries of the list items are aligned with the boundaries of the visible area. After the page turns, the list items at the edge of the visible area are often partially cropped, and users cannot rely on the page turning to obtain the fully visible list items.

[0071] However, even after controlling the list scrolling using the above methods, it is impossible to guarantee that each row is fully viewed and the landing point is accurate when paging by row, which leads to a poor user browsing experience.

[0072] In view of the above-mentioned deficiencies, this application provides a method for displaying an interface, which can be applied to scenarios where a user issues a scrolling command to control a list to scroll automatically.

[0073] Specifically, in response to the target scroll command, the anchor list item and the target scroll row number in the visible area of ​​the list are determined. Starting from the anchor list item, adjacent list items are traversed to obtain the cumulative width. The anchor list item provides an accurate scroll reference position. During the traversal, the target list item is obtained based on the cumulative width of the list items, the row width of the visible area of ​​the list, and the target scroll row number. Finally, the target list scrolling is controlled based on the target list item. Because it can identify the boundary of each logical row and the number of list items, and determine the target list item for scrolling based on this, it avoids the problems of line skipping, landing point deviation, or edge clipping caused by the variable number of items per row in existing technologies. It enables accurate row-by-row pagination in mixed grid lists, ensuring accurate landing points of target list items and avoiding missing content, thereby improving the user's browsing experience.

[0074] The following is combined with Figure 4This application provides a detailed description of an interface display method based on an embodiment.

[0075] Figure 4 This is a schematic flowchart illustrating a method for displaying an interface provided in an embodiment of this application. Figure 4 As shown, method 400 includes S401 to S404, which are described in detail below.

[0076] For example, Figure 4 The method 400 shown is performed by the vehicle's in-vehicle multimedia host (HeadUnit, HUT).

[0077] S401, in response to the target scroll command, determine the anchor list item and the target scroll row number in the list view area, and display at least one list item in the target list in the list view area. The anchor list item is used to indicate the reference scroll position corresponding to the target scroll command.

[0078] The target scroll command is used to instruct the target list to scroll. Generally, the target scroll command can include a scrolling direction, such as scrolling up or scrolling down. In some embodiments, the target scroll command can be any one of scrolling up, scrolling down, scrolling to the top, or scrolling to the bottom. It should be understood that the target scroll command can be triggered by the user through voice, touch, gesture, or button. As an example, when the in-vehicle multimedia host displays the target list through the list's visible area, if the user wants to view subsequent list items, they can say "scroll down" or "page down" to trigger the target scroll command.

[0079] It should be understood that when controlling the scrolling of a list, a baseline scroll position is required. Subsequent scrolling is controlled from this baseline position. Anchor list items can indicate this baseline scroll position. For example, the lower boundary of an anchor list item is the baseline scroll position, or the upper boundary of an anchor list item is the baseline scroll position.

[0080] For example, when the system detects that the user has issued a voice command to turn the page "next page", it receives the voice command and performs semantic parsing to identify that the user's intention is to turn the page down, and maps the voice command to a downward scrolling operation.

[0081] In some embodiments, step S401 may be performed as follows: when the target scrolling instruction indicates scrolling downwards, the last list item displayed in the list's visible area is determined as the anchor list item; when the target scrolling instruction indicates scrolling upwards, the first list item displayed in the list's visible area is determined as the anchor list item.

[0082] Optionally, the target number of scroll rows can be a pre-configured fixed row step, without needing to be dynamically calculated based on the height of the list's visible area.

[0083] For example, user-defined page-turning line preferences can be stored. Users can set the page to turn 2 or 3 lines each time according to their browsing habits. After receiving the target scrolling instruction, the fixed value can be directly obtained as the target scrolling line number.

[0084] In one implementation, the method further includes: Based on the target scrolling command, the target scrolling direction is determined, which includes scrolling upwards and scrolling downwards; Starting with the anchor list item, traverse the list items adjacent to the anchor list item to obtain the cumulative width of the list items. The specific process may include: Starting from the anchor list item, traverse the list items adjacent to the anchor list item along the target scroll direction to obtain the cumulative width of the list items.

[0085] Traversal, also known as sequential access or sequential reading, is used to represent the process of accessing list items one by one, starting from the beginning.

[0086] The list item adjacent to the anchor list item represents the list item that is immediately next to the anchor list item in the target list. When scrolling down, the list items adjacent to the anchor list item are one or more list items following the anchor list item; when scrolling up, the list items adjacent to the anchor list item are one or more list items preceding the anchor list item. The number of adjacent list items is determined by the traversal process, and traversal stops when the cumulative width reaches the line width or a stopping condition is met.

[0087] It should be understood that during the traversal process, it is necessary to detect in real time whether the cumulative width has reached the row width of the visible area of ​​the list.

[0088] Specifically, after traversing each list item and adding its occupied width to the cumulative width, the current cumulative width is compared with the row width of the list's visible area. If the cumulative width is less than the row width, the process continues to traverse the next adjacent list item; if the cumulative width equals the row width, the current logical row is considered closed, the row count is updated, the cumulative width is cleared, and the process continues to traverse the next logical row; if the cumulative width is greater than the row width, the process determines that the currently traversed list item has exceeded the capacity of the current logical row, and the list item is moved to the next logical row.

[0089] During traversal, when the cumulative width exceeds the row width of the visible list area, a placeholder is set at the currently traversed position, and the currently traversed list item is designated as the list item at the beginning of the next logical row. The placeholder is used to identify the truncation position of the current logical row where it exceeds the row width, marking the boundary of the logical row's end, which is beneficial for quickly identifying the boundaries of each row during subsequent traversal and pagination.

[0090] In some possible embodiments, when determining the target scrolling direction, if the target scrolling instruction carries a direction identifier, the target scrolling direction is directly determined based on the direction identifier; if the target scrolling instruction does not carry a direction identifier, the target scrolling direction can be determined according to preset rules (e.g., scrolling down by default), or the user's voice instruction can be further semantically recognized to determine the target scrolling direction.

[0091] In some possible implementations, the position information of the anchor list item in the target list can be obtained before traversal, and the presence of enough list items for traversal along the target scrolling direction can be determined based on this position information. If there are insufficient remaining list items, the last or first list item of the target list can be directly determined as the target list item, without performing a traversal operation.

[0092] In some possible embodiments, the cumulative width can be measured using various methods. For example, for a target list using a grid layout, the width occupied by a list item can be measured by the number of columns it occupies, and the cumulative width is the cumulative number of columns occupied. For a target list using an absolute pixel layout, the width occupied by a list item can be measured by pixel values, and the cumulative width is the cumulative pixel width. Different measurement methods can be used to determine whether the cumulative width has reached the row width.

[0093] For example, such as Figure 5 As shown, Figure 5(a) includes a target list 500, a list view area 501, and an anchor list item 502. The target list 500 includes list items 1 to 14, a total of 14 list items, with a maximum column count C=3. Upon detecting a user's voice command "Next Page," the command is converted into a target scrolling command. Based on this command, the target scrolling direction is determined to be downward scrolling, and the anchor list item 502, i.e., list item 6, is determined from the list view area 501. Before scrolling, the list view area 501 displays all the content of list items 1 to 6. The anchor list item is the last visible list item in the list view area 501, i.e., list item 6. The target scrolling row count is obtained; assuming the target scrolling row count is 2. After determining the anchor list item 502 and the target scroll row number, using list item 6 as the baseline scroll position, the logical rows are traversed downwards. When the number of logical rows reaches 2, the last list item of that logical row is determined as the target list item, and the target list 500 is controlled to scroll to that target list item. The scrolled target list 500 is then displayed in the list visibility area 501. For example, Figure 5 (b) shows the display effect after scrolling. The list view area 501 displays the full content of list item 7 and list item 8. The target list item is fully displayed in the list view area 501. The anchor list item in the target list 500 after scrolling is 503, that is, list item 8, which realizes accurate page turning by line.

[0094] When the target scroll command instructs you to scroll downwards, the list item numbers gradually increase as the target list scrolls. Designating the last list item displayed within the visible area as the anchor item makes it easier to determine the downward scroll stop position. Subsequent scrolling down the target list by the corresponding number of items / distances from the last item will then reach that stop position. Conversely, when the target scroll command instructs you to scroll upwards, the list item numbers gradually decrease as the target list scrolls. Therefore, designating the first list item displayed within the visible area as the anchor item makes it easier to determine the upward scroll stop position. Subsequent scrolling up the target list by the corresponding number of items / distances from the first item will then reach that stop position.

[0095] It is worth noting that after identifying the anchor list item from the list's visible area, it is also possible to determine whether the target list has been scrolled to the top / bottom.

[0096] It should be understood that when the target scroll instruction is to scroll upwards, it can be determined whether the target list has scrolled to the top. When the target scroll instruction is to scroll downwards, it can be determined whether the target list has scrolled to the bottom.

[0097] One possible approach to determining whether the target list has scrolled to the top is as follows: if the anchor list item is the first item in the target list, determine the distance between the first and second top boundaries; if the distance between the first and second top boundaries is less than a first distance threshold, and / or if the remaining scrollable amount is less than or equal to a second distance threshold, determine that the target list has scrolled to the top; if the anchor list item is not the first item in the target list, determine that the target list has not scrolled to the top.

[0098] The first upper boundary refers to the upper boundary of the anchor list item, and the second upper boundary refers to the upper boundary of the visible area of ​​the list. In this embodiment, the anchor list item may include the first upper boundary and the first lower boundary, and the visible area of ​​the list may include the second upper boundary and the second lower boundary. In this case, the distance between the first upper boundary and the second upper boundary can be determined by obtaining the ordinates of the first upper boundary and the second upper boundary respectively.

[0099] It should be understood that each anchor list item and each boundary of the list's visible area has corresponding coordinate positions on the vehicle-mounted display screen. As an example, a Cartesian coordinate system can be constructed with the top-left corner of the vehicle-mounted display screen as the origin, the horizontal axis pointing to the right of the origin as the horizontal axis, and the vertical axis pointing downwards from the origin as the vertical axis. In this case, the vertical coordinates of the top and bottom boundaries of the anchor list items and the top and bottom boundaries of the list's visible area can be obtained from the Cartesian coordinate system. It should be noted that, in addition to constructing a Cartesian coordinate system with the top-left corner of the vehicle-mounted display screen as the origin, it is also possible to construct a Cartesian coordinate system with the top-right, bottom-left, or bottom-right corners of the vehicle-mounted display screen as the origin; this application does not limit this approach.

[0100] The first and second distance thresholds can be preset. The first distance threshold represents the tolerable boundary distance between the anchor list item and the list's visible area, provided the anchor list item is aligned with the boundary of the list's visible area. The second distance threshold is typically set to 0.

[0101] In the above steps, the core idea of ​​determining whether the target list has scrolled to the top is to determine whether the top boundary (first top boundary) of the first list item in the target list is aligned with the top boundary (second top boundary) of the list's visible area. Specifically, if the anchor list item is the first list item in the target list, it means that the first list item displayed in the list's visible area is indeed the first list item in the target list. Then, by subtracting the ordinate of the second top boundary from the ordinate of the first top boundary, we can determine the distance between the first and second top boundaries. If the distance between the first and second top boundaries is less than a first distance threshold, it means that the distance between the first and second top boundaries meets the tolerable boundary distance between the anchor list item and the list's visible area when the anchor list item is aligned with the top boundary of the list's visible area. Therefore, we can determine that the top boundary of the anchor list item is aligned with the top boundary of the list's visible area. Additionally, the remaining scrollable amount represents the amount of space that can still be scrolled upwards. By determining whether the remaining scrollable amount is less than or equal to 0, if the remaining scrollable amount is less than or equal to 0, it can be determined that the target list has indeed scrolled to the top and cannot be scrolled upwards any further. Therefore, it can be confirmed that the target list has scrolled to the top.

[0102] Since the anchor list item is not the first list item in the target list, it means that there are still undisplayed list items before the anchor list item in the target list. In this case, the target list can still scroll up, so it can be directly determined that the target list has not scrolled to the top.

[0103] The operation to determine whether the target list has scrolled to the bottom can be as follows: if the anchor list item is the last item in the target list, determine the distance between the first lower boundary and the second lower boundary; if the distance between the first lower boundary and the second lower boundary is less than a first distance threshold, and / or the remaining scrollable amount is less than or equal to a second distance threshold, determine that the target list has scrolled to the bottom; if the anchor list item is not the last item in the target list, determine that the target list has not scrolled to the bottom.

[0104] Similarly, the core idea for determining whether the target list has scrolled to the bottom is to check if the bottom boundary (first bottom boundary) of the last list item in the target list is aligned with the bottom boundary (second bottom boundary) of the list's visible area. Specifically, if the anchor list item is the last list item in the target list, it means that the last list item displayed within the list's visible area is indeed the last list item in the target list, and scrolling downwards should not be possible. Then, by subtracting the ordinate of the second bottom boundary from the ordinate of the first bottom boundary, we can determine the distance between them. If this distance is less than a first distance threshold, it means that the distance between the first and second bottom boundaries meets the acceptable boundary distance between the anchor list item and the list's visible area when the anchor list item is aligned with the bottom boundary of the list's visible area. Therefore, we can confirm that the bottom boundary of the anchor list item is indeed aligned with the bottom boundary of the list's visible area. The remaining scrollable amount represents the amount of space that can still be scrolled down. By checking if the remaining scrollable amount is less than or equal to 0, we can determine that the target list has indeed scrolled to the bottom and cannot be scrolled down any further.

[0105] Since the anchor list item is not the last list item in the target list, it means that there are still undisplayed list items after the anchor list item in the target list. In this case, the target list can still scroll down, so it can be directly determined that the target list has not scrolled to the bottom.

[0106] It is worth noting that if the target scroll command is to scroll upwards, and it is determined that the target list has scrolled to the top, or if the target scroll command is to scroll downwards, and it is determined that the target list has scrolled to the bottom, the first reminder message can be returned directly.

[0107] The first notification message is used to inform the user that scrolling cannot continue or that scrolling has failed, and also displays the error code. To further inform the user of the reason for the scrolling failure, the first notification message may also include the reason for the failure, such as scrolling to the top or bottom.

[0108] Optionally, the total number of items in the target list can be obtained, and the remaining number of traversable list items can be determined based on the target scroll direction, the total number of list items, and the anchor list item. If the remaining number of traversable list items is less than the item step size corresponding to the target scroll row number, then the last or first list item of the target list is determined as the target list item. The above scheme can avoid scrolling anomalies caused by out-of-bounds errors.

[0109] If the target scroll command is to scroll upwards, and it is determined that the target list has not scrolled to the top; or if the target scroll command is to scroll downwards, and it is determined that the target list has not scrolled to the bottom, then subsequent steps S402 to S404 can be executed to further control the scrolling of the target list.

[0110] Optionally, if the heights of the list items are inconsistent, the heights of the traversed list items can be accumulated synchronously during the traversal process, and the traversal can be stopped when the accumulated height reaches the height of the visible area of ​​the list, so as to further control the visual effect of page turning.

[0111] For example, in mixed row height scenarios, if the height of a certain row is higher than the average height of other rows, the traversal can be stopped in advance to avoid a large number of blank or half-line areas appearing in the visible area after page turning.

[0112] In the above implementation, the target scrolling direction is determined based on the target scrolling instruction, and the cumulative width is obtained by traversing adjacent list items along the target scrolling direction starting from the anchor list item. Since the anchor list item provides the reference scrolling position, traversing according to the target scrolling direction obtained based on the target scrolling instruction ensures that the recognition order of each logical row during the traversal matches the page turning direction. This avoids incorrect page turning caused by unclear direction or inconsistency between the traversal path and the page turning direction, and ensures that the list items corresponding to the target scrolling row number are accurately accumulated in the target scrolling direction. This ensures the accurate positioning of the target list items, improves the accuracy of page turning, and enhances the user's browsing experience.

[0113] In one implementation, the method further includes: Determine the visibility status of anchor list items. Visibility status indicates whether the content in the anchor list item is fully displayed within the list's visible area. If the content of the anchor list item is not fully displayed within the visible area of ​​the list, update the anchor list item based on the target scroll direction corresponding to the target scroll instruction.

[0114] The visibility status indicates whether the content of the anchor list item is fully displayed within the list's visible area. There are two visibility statuses: fully displayed and partially displayed. When the entire content of the anchor list item is within the boundary of the list's visible area, the visibility status is fully displayed; when part of the content of the anchor list item is obscured by the boundary of the list's visible area, the visibility status is partially displayed. The visibility status is the basis for determining whether the anchor list item needs to be updated.

[0115] "Not fully displayed," also known as "partially displayed," "cropped," or "half-exposed," indicates that the content of an anchor list item is not fully displayed within the list's visible area. Reasons for an anchor list item not being fully displayed include: the top boundary of the anchor list item is above the top boundary of the list's visible area (top cropping), the bottom boundary of the anchor list item is below the bottom boundary of the list's visible area (bottom cropping), or both the top and bottom boundaries exceed the visible area.

[0116] In the embodiments of this application, before traversing adjacent list items starting from the anchor list item, the visibility state of the anchor list item is first determined. This visibility state indicates whether the content of the anchor list item is fully displayed within the visible area of ​​the list. If the visibility state indicates that the content of the anchor list item is fully displayed within the visible area of ​​the list, there is no need to update the anchor list item, and subsequent traversal operations are performed directly starting from this anchor list item. If the visibility state indicates that the content of the anchor list item is not fully displayed within the visible area of ​​the list, the anchor list item is updated according to the target scrolling direction, adjusting the anchor list item to a list item whose adjacent complete logical row is located at the end or beginning of the row, and the updated anchor list item is used as the starting position for traversal.

[0117] In other words, when anchor list items are clipped by the visible area boundary, updating them to the corresponding list items in the adjacent complete logical line ensures that the traversal start point is located at the boundary of a complete visible logical line. This guarantees that page turning starts from a line that has been fully viewed, avoiding skipping the content of a line that is partially exposed as the starting point.

[0118] In some embodiments, step S401 may involve: obtaining the positional relationship between the list's visible area and the anchor list item; determining that the anchor list item's visibility state is fully visible when the positional relationship indicates that both the first upper boundary and the first lower boundary are within the list's visible area; and determining that the anchor list item's visibility state is partially visible when the positional relationship indicates that at least one of the first upper boundary and the first lower boundary is not within the list's visible area.

[0119] In some embodiments, the positional relationship between the list view area and the anchor list item is used to indicate the degree of overlap between the list view area and the anchor list item, such as complete overlap or partial overlap. Specifically, this positional relationship can indicate the display of the first upper boundary and the first lower boundary of the anchor list item within the list view area.

[0120] Since the content between the first upper boundary and the first lower boundary constitutes the content of the anchor list item, if both the first upper boundary and the first lower boundary are within the list's visible area, then the content of the anchor list item is entirely within the list's visible area, and therefore, the anchor list item's visibility state can be determined to be fully visible. If at least one of the first upper boundary and the first lower boundary is not within the list's visible area, then the content of the anchor list item is not fully displayed within the list's visible area, and therefore, the anchor list item's visibility state can be determined to be partially visible.

[0121] For example, such as Figure 2 As shown in (a), the target list 200 includes list items 1 to 12, with a maximum number of columns C=3. The visible area 201 displays the full content of list items 1, 2, and 3, and partial content of list items 4, 5, and 6. The default anchor list item 202 is the last visible list item in the visible area 201, i.e., list item 6. The upper and lower boundary positions of list item 6, as well as the upper and lower boundary positions of the visible area 201, are obtained. Comparison shows that the lower boundary of list item 6 is below the lower boundary of the visible area 201, therefore, the content of the anchor list item is not fully displayed. Assuming the target scrolling direction is downward, the anchor list item 202 is updated to the last list item of the logical row preceding the logical row to which list item 6 belongs, i.e., list item 3. After the update, list item 3 is used as the new anchor list item, serving as the starting position for subsequent traversals. Based on the above process, the pagination traversal starts from list item 3, rather than list item 6 which is never fully displayed, to ensure that the content of the complete logical row is not skipped during the pagination process.

[0122] In the above method, the upper and lower boundaries of the anchor list item are determined to fall within the visible area of ​​the list based on the positional relationship between the anchor list item and the visible area of ​​the list, so that the visibility status of the anchor list item can be determined conveniently and accurately.

[0123] In the above implementation, the visibility state of the anchor list item is determined, and the anchor list item is updated based on the target scrolling direction when its content is not fully displayed within the visible area of ​​the list. Since the anchor list item serves as the reference scrolling position corresponding to the target scrolling instruction, the complete display of its content affects the accuracy of the page-turning starting point. When the anchor list item is not fully displayed, it indicates that the logical row where the current reference position is located is in a clipped state. If the incompletely displayed list item is directly used as the traversal starting point, the undisplayed part of that row will be missed. This solution, by detecting the visibility state of the anchor list item and updating it when it is not fully displayed, adjusts the page-turning starting point to the fully visible adjacent logical row. This avoids the problem of skipping or missing rows caused by edge list items being incorrectly included in the page-turning range due to clipping in the prior art. Therefore, it can ensure the accuracy of the page-turning reference position, thereby ensuring that each row is fully viewed during the row-by-row page-turning process, improving the user experience.

[0124] In one implementation, the specific process of updating the anchor list items based on the target scroll direction corresponding to the target scroll instruction may include: When the target scrolling direction is downward, the anchor list item is updated to the list item located at the end of the first logical row. The first logical row is the adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction to the target scrolling direction. When the target scrolling direction is upward, the anchor list item is updated to the list item at the beginning of the second logical row. The second logical row is the adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction to the target scrolling direction.

[0125] The line end position, also known as the end of the line or the end of the logical line, indicates the position of the last list item in a logical line. In a downward scrolling scenario, the anchor list item is updated to the list item located at the line end position in the first logical line, that is, the anchor is updated to the last list item of the previous complete logical line.

[0126] The row beginning position, also known as the line start position or logical row start, indicates the position of the first list item in a logical row. In an upward scrolling scenario, the anchor list item is updated to the list item located at the row beginning position in the second logical row, that is, the anchor is updated to the first list item of the next complete logical row.

[0127] In the embodiments of this application, after determining that the visibility state of an anchor list item is not fully displayed, the anchor list item is updated according to the target scrolling direction. Specifically, when the target scrolling direction is downward, the anchor list item is updated to the list item located at the end of the first logical row, wherein the first logical row is the adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction (i.e., upward direction); when the target scrolling direction is upward, the anchor list item is updated to the list item located at the beginning of the second logical row, wherein the second logical row is the adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction (i.e., downward direction).

[0128] In other words, when an anchor list item is clipped, the clipped anchor list item is not used directly as the starting point for traversal. Instead, it is shifted in the opposite direction of the target scrolling direction to an adjacent, fully visible logical line, and the list item at the end or beginning of that line is taken as the updated anchor list item. This ensures that the starting point for page turning is a fully visible list item, avoiding skipping the content of that line due to using a partially exposed line as the starting point.

[0129] In one possible embodiment, when determining the first or second logical row, the adjacent logical rows of the logical row to which the anchor list item belongs are identified. If the target scrolling direction is downward, the first logical row is the previous logical row of the logical row to which the anchor list item belongs, i.e., the adjacent logical row along the direction of decreasing list number. If the target scrolling direction is upward, the second logical row is the next logical row to which the anchor list item belongs, i.e., the adjacent logical row along the direction of increasing list number. If the logical row to which the anchor list item belongs is already located at the first or last row of the target list, and there are no adjacent complete logical rows, then the first or last list item of the target list can be directly determined as the updated anchor list item.

[0130] For example, such as Figure 2As shown in (a), the target list 200 includes list items 1 to 12, with a maximum number of columns C=3. The visible area 201 displays the full content of list items 1, 2, and 3, and partial content of list items 4, 5, and 6. The anchor list item 202 is the last visible list item in the visible area 201, namely list item 6. The upper and lower boundary positions of list item 6, as well as the upper and lower boundary positions of the visible area 201, are obtained. Comparison shows that the lower boundary of list item 6 is below the lower boundary of the visible area 201, therefore, the content of the anchor list item 202 is not fully displayed. At this time, the target scrolling direction is downward. The logical behavior of the anchor list item 202 is determined to be the row containing list items 4, 5, and 6, which is clipped at the bottom of the visible area. The preceding logical line (i.e., the line containing list item 1, list item 2, and list item 3) is designated as the first logical line. The list item at the end of this first logical line, i.e., list item 3, is then retrieved, and anchor list item 202 is updated to list item 3. After the update, subsequent traversal operations begin with list item 3, rather than starting with list item 6, which has not been fully displayed. This ensures that the page count is accumulated from the last line the user has fully viewed, preventing the undisplayed portions of list items 4, 5, and 6 from being skipped.

[0131] When updating anchor list items, the update target is determined based on the target scrolling direction. Specifically, when the target scrolling direction is downward, the anchor list item is usually the end-of-line list item of the logical row containing the last item in the list's visible area. When it is truncated, it means that the logical row is cut off at the bottom. Therefore, the anchor list item is updated to the end-of-line list item of the previous logical row, that is, the list item located at the end of the adjacent complete logical row above this row. When the target scrolling direction is upward, the anchor list item is usually the beginning-of-line list item of the logical row containing the first item in the list's visible area. When it is truncated, it means that the logical row is cut off at the top. Therefore, the anchor list item is updated to the beginning-of-line list item of the next logical row, that is, the list item located at the beginning of the adjacent complete logical row below this row.

[0132] In some possible implementations, before updating the anchor list item, it can be determined whether there are adjacent complete logical rows in the opposite direction of the target scrolling direction to the logical row to which the anchor list item belongs. If not (for example, the logical row to which the anchor list item belongs is the first or last row of the target list), then the first or last list item of the target list is directly determined as the updated anchor list item.

[0133] In some possible embodiments, the list item located at the end of the first logical line can be determined by obtaining the index of the end list item of the first logical line, which is the maximum value of all list item indices in the first logical line. The list item located at the beginning of the second logical line can be determined by obtaining the index of the beginning list item of the second logical line, which is the minimum value of all list item indices in the second logical line.

[0134] Optionally, after updating the anchor list items, the visibility of the updated anchor list items can be reconfirmed. Specifically, the upper and lower boundary positions of the updated anchor list items are retrieved again and compared with the boundary positions of the list's visible area to confirm that their content is fully displayed. If there are still cases where content is not fully displayed, the item continues to shift in the opposite direction of the target scrolling direction to the end or beginning of the previous complete logical line's list item until the content of the selected anchor list item is fully displayed.

[0135] In one possible implementation, upon detecting that an anchor list item is not fully displayed, instead of performing a clipping and re-anchoring operation (i.e., updating the anchor to the end list item of the previous complete logical row), the visible area of ​​the list is first scrolled down a certain number of pixels using pixel-level scrolling, aligning the bottom / top of the anchor list item with the bottom / top boundary of the visible area 201, thus ensuring that the content of the anchor list item is fully displayed within the visible area. After the anchor list item is fully displayed, a traversal and pagination operation is then performed based on the target number of scroll rows for each anchor list item.

[0136] The above possible implementation requires first performing pixel-level scrolling to fully display the anchor list items, and then performing row-by-row page turning. This requires multiple scrolling operations to complete one page turn, which increases the latency of the page turning process. Furthermore, multiple scrolling operations may cause interface shaking, affecting the user's browsing experience.

[0137] In the above implementation, the visibility state of the anchor list item is determined, and when the content of the anchor list item is not fully displayed in the visible area of ​​the list, the anchor list item is updated to a list item in the opposite direction with the adjacent complete logical row at the end of the row or at the beginning of the row, based on the target scrolling direction. Because the bottom row is cropped at the edge of the list's visible area when scrolling down, updating the anchor point to the end of the previous complete logical row ensures that page navigation starts from the last row that has been fully viewed, avoiding skipping content from incomplete rows. Similarly, when scrolling up, the top row is cropped at the edge of the list's visible area, and updating the anchor point to the beginning of the next complete logical row ensures that page navigation starts from the last row that has been fully viewed, again avoiding skipping content from incomplete rows. Therefore, this solution updates the anchor list item to the end or beginning of the adjacent complete logical row in the opposite direction based on the target scrolling direction. This ensures that all list items are fully viewed during page navigation, avoiding the missing row problem caused by edge cropping in related technologies, thereby further improving the accuracy of page navigation and the user's browsing experience.

[0138] In one implementation, the method further includes: Get the top and bottom boundary positions of the anchor list items, as well as the top and bottom boundary positions of the visible area of ​​the list; The specific process of determining the visibility status of anchor list items may include: When the top and bottom edges of an anchor list item are both between the top and bottom edges of the list's visible area, the visibility status is determined to indicate that the content of the anchor list item is fully displayed within the list's visible area. If at least one of the upper and lower boundary positions of the anchor list item is not between the upper and lower boundary positions of the list's visible area, the visibility status is determined to indicate that the content of the anchor list item is not fully displayed within the list's visible area.

[0139] In embodiments of this application, the upper and lower boundary positions of the anchor list item, as well as the upper and lower boundary positions of the list's visible area, are obtained. After obtaining these boundary positions, the system compares the upper boundary position of the anchor list item with the upper boundary position of the list's visible area, and compares the lower boundary position of the anchor list item with the lower boundary position of the list's visible area to determine whether the content of the anchor list item completely falls within the range of the list's visible area.

[0140] Specifically, if both the upper and lower boundaries of an anchor list item are between the upper and lower boundaries of the list's visible area, the visibility status indicates that the content of the anchor list item is fully displayed within the list's visible area; if at least one of the upper and lower boundaries of an anchor list item is not between the upper and lower boundaries of the list's visible area, the visibility status indicates that the content of the anchor list item is not fully displayed within the list's visible area.

[0141] For example, when the top boundary of an anchor list item is above the top boundary of the list's visible area, the top of the anchor list item is cropped; when the bottom boundary of an anchor list item is below the bottom boundary of the list's visible area, the bottom of the anchor list item is cropped; when both the top and bottom boundaries are between the top and bottom boundaries of the list's visible area, the content of the anchor list item is fully visible. This boundary comparison method accurately determines whether an anchor list item is cropped by the visible area boundary, providing a precise basis for deciding whether to update the anchor list item.

[0142] In one embodiment, the visibility state of an anchor list item can be determined based on the positional relationship between the list's visible area and the anchor list item: obtaining the ordinates of a first upper boundary, a first lower boundary, a second upper boundary, and a second lower boundary in the target coordinate system; if the ordinate of the first upper boundary is greater than or equal to the ordinate of the second upper boundary and the ordinate of the first lower boundary is less than or equal to the ordinate of the second lower boundary, the positional relationship indicates that both the first upper boundary and the first lower boundary are within the list's visible area; if the ordinates of the first upper boundary and / or the first lower boundary are not obtained, the positional relationship indicates that at least one of the first upper boundary and the first lower boundary is not within the list's visible area.

[0143] The target coordinate system is a rectangular coordinate system with the upper left corner of the vehicle display screen as the origin, the horizontal axis to the right of the origin, and the vertical axis downward from the origin. In other words, on the vehicle display screen or the visible area of ​​the list, the vertical coordinate of each position gradually increases from top to bottom.

[0144] In the above steps, if the ordinate of the first upper boundary is greater than or equal to the ordinate of the second upper boundary, it indicates that the upper boundary of the anchor list item is below the upper boundary of the list's visible area, or that the upper boundary of the anchor list item coincides with the upper boundary of the list's visible area. If the ordinate of the first lower boundary is less than or equal to the ordinate of the second lower boundary, it indicates that the lower boundary of the anchor list item is above the lower boundary of the list's visible area, or that the lower boundary of the anchor list item coincides with the lower boundary of the list's visible area. This means that both the upper and lower boundaries of the anchor list item are within the list's visible area. If the ordinate of the first upper boundary / first lower boundary is not obtained, it indicates that the upper / lower boundary of the anchor list item is not displayed on the vehicle display screen, meaning that the upper / lower boundary of the anchor list item is not displayed within the list's visible area. If the ordinates of both the first upper boundary and the first lower boundary are not obtained, it indicates that neither the upper nor lower boundary of the anchor list item is displayed within the list's visible area. Therefore, it can be determined that this positional relationship indicates that at least one of the first upper boundary and the first lower boundary is not within the list's visible area.

[0145] For example, such as Figure 2 As shown in (a), the target list 200 includes list items 1 to 12. The visible area 201 displays the full content of list items 1, 2, and 3, and partial content of list items 4, 5, and 6. The anchor list item 202 is the last visible list item in the visible area 201, namely list item 6. The upper boundary position (y1, y2) and lower boundary position (y2, yT) of list item 6, as well as the upper boundary position (yT, yB) and lower boundary position (yB, yB) of the visible area 201, are obtained. By comparison, the upper boundary position Y1 of list item 6 is between the upper boundary position YT and the lower boundary position YB of the visible area, but the lower boundary position Y2 of list item 6 is greater than the lower boundary position YB of the visible area, meaning the lower boundary position of list item 6 is not between the upper and lower boundaries of the visible area. Since at least one of the upper and lower boundaries of the anchor list item is not between the upper and lower boundaries of the list's visible area, it is determined that the content of anchor list item 202 is not fully displayed within the list's visible area 201. At this point, an anchor list item update operation is triggered, updating the anchor list item to the end list item of the previous complete logical row. Through the above boundary position comparison, the system can accurately identify that the bottom of list item 6 is clipped, thus providing an accurate basis for subsequent anchor update judgments.

[0146] In one implementation, the method further includes: Get the area of ​​the overlapping region between the anchor list item and the visible area of ​​the list; Determine the visibility status of anchor list items, including: The visibility status of anchor list items is determined based on the target ratio of the area of ​​the overlapping region to the area of ​​the anchor list item.

[0147] In the above implementation, the area of ​​the overlapping area between the anchor list item and the visible area of ​​the list is obtained, and the visibility state of the anchor list item is determined based on the target ratio between the area of ​​the overlapping area and the area of ​​the anchor list item. Since the target ratio can directly reflect the visibility of the anchor list item within the visible area of ​​the list, it can avoid the switching between fully displayed and partially displayed states due to slight deviations in the boundary position, prevent unnecessary anchor update operations, and thus improve the stability of the page turning process and the user's browsing experience while ensuring the accuracy of the visibility state judgment.

[0148] In another embodiment, the visibility state of an anchor list item can be determined by judging whether the center point of the anchor list item is within the visible area of ​​the list; if the center point of the anchor list item is within the visible area of ​​the list, the area ratio of the anchor list item entering the visible area of ​​the list is determined; if the area ratio is greater than or equal to a target ratio threshold, the positional relationship indicates that both the first upper boundary and the first lower boundary are within the visible area of ​​the list; if the center point of the anchor list item is not within the visible area of ​​the list, or if the area ratio is less than the target ratio threshold, the positional relationship indicates that at least one of the first upper boundary and the first lower boundary is not within the visible area of ​​the list.

[0149] The target ratio threshold can be preset. The target ratio threshold indicates the minimum overlap ratio that should be achieved between the anchor list item and the list's visible area when the anchor list item is fully displayed within the list's visible area.

[0150] It should be understood that this area ratio can indicate the overlap ratio between the anchor list item and the visible area of ​​the list. By judging the overlap ratio, it can also be determined whether the anchor list item is fully displayed in the visible area of ​​the list.

[0151] When the center point of an anchor list item is not within the visible area of ​​the list, it indicates a low overlap between the anchor list item and the visible area, meaning the anchor list item is not fully displayed within the visible area. In the above steps, first determining if the center point of the anchor list item is within the visible area eliminates the possibility of a low overlap, as this would mean only one boundary of the anchor list item is within the visible area. If the center point of the anchor list item is within the visible area, it indicates a high overlap. In this case, the overlap ratio can be further determined to assess whether the anchor list item is fully displayed. Specifically, this involves determining the area proportion of the anchor list item within the visible area. If this proportion is greater than or equal to a target threshold, the overlap ratio has been reached—the minimum overlap required for the anchor list item to be fully displayed within the visible area. Therefore, it can be determined that both the top and bottom boundaries of the anchor list item are displayed within the visible area. If the area ratio is less than the target ratio threshold, it means that some content of the anchor list item is not within the visible area of ​​the list, and it can be determined that the anchor list item has at least one boundary that is not within the visible area of ​​the list.

[0152] It is worth noting that the above method of determining whether the upper and lower boundaries of an anchor list item fall into the visible area of ​​the list based on the overlap ratio between the anchor list item and the visible area of ​​the list is applicable when the height of the anchor list item is less than or equal to the height of the visible area of ​​the list.

[0153] In one implementation, the specific process of determining the visibility state of an anchor list item based on a target ratio between the area of ​​the overlapping region and the area of ​​the anchor list item may include: When the target ratio is greater than or equal to the preset ratio, ensure that the content of the visible status indicator anchor list item is fully displayed within the visible area of ​​the list; When the target ratio is less than the preset ratio, it is determined that the content of the visible status indicator anchor list item is not fully displayed in the visible area of ​​the list.

[0154] For example, the area of ​​the overlapping region between the visible area of ​​the list and the anchor list items is obtained. If the ratio of the overlapping area to the total area of ​​the anchor list items is greater than or equal to a preset threshold (e.g., 95%), the visible state is determined to be fully displayed; if the ratio is less than the preset threshold, the visible state is determined to be partially displayed. This embodiment can avoid frequent switching between fully displayed and partially displayed states due to slight deviations in the boundary position, preventing unnecessary anchor update operations.

[0155] In the above implementation, when the target ratio is greater than or equal to the preset ratio, the visibility status indicator shows that the content of the anchor list item is fully displayed within the list's visible area. When the target ratio is less than the preset ratio, the visibility status indicator shows that the content of the anchor list item is not fully displayed within the list's visible area. Since the preset ratio can be dynamically set according to actual needs, it can determine the visibility status of the anchor list item, avoiding misjudgments of the visibility status due to slight deviations in boundary positions or rendering errors. This further improves the accuracy of visibility status determination and the reliability of the page-turning process, reduces unnecessary anchor update operations, and enhances the user's browsing experience.

[0156] In another embodiment, the visibility state of the anchor list item can be determined using a pixel-based detection method. For example, the display area of ​​the anchor list item on the screen (including the range of its horizontal and vertical coordinates) is obtained, and the display area of ​​the list's visible region is also obtained. It is then determined whether the display area of ​​the anchor list item completely falls within the display area of ​​the list's visible region.

[0157] In some possible embodiments, the anchor list item is not fully displayed because the height of the list item itself is greater than the height of the visible area of ​​the list. That is, the height of the list item exceeds the height of the visible area and cannot be fully displayed in the visible area. In this case, the operation of updating the anchor list item is not performed, and scrolling is performed directly based on the anchor list item.

[0158] In some possible embodiments, the granularity of visibility detection can be precise down to the content area within the list item (i.e., the core display content of the list item, excluding blank or border areas within the list item). If the actual content area of ​​the anchor list item (e.g., icon, text) is fully visible, while the border is cropped, it can be considered fully displayed. This embodiment can avoid unnecessary anchor updates triggered by slight cropping of non-content areas.

[0159] In some possible implementations, the detection of the visible state can be performed immediately after the anchor list item is determined, or it can be performed after each list scrolling operation.

[0160] For example, after a user manually scrolls through the list, the system can automatically re-detect the visibility status of the current anchor list item to ensure that the visibility status information of the anchor list item is up-to-date when the next page is turned.

[0161] In the above implementation, the visibility status of the anchor list item is determined by obtaining the upper and lower boundary positions of the anchor list item, as well as the upper and lower boundary positions of the visible area of ​​the list. Since the upper and lower boundary positions of the anchor list item can accurately reflect the actual display area of ​​the list item on the screen, comparing them with the boundary positions of the visible area of ​​the list can accurately identify partially exposed list items and trigger the anchor list item update. This provides an accurate basis for subsequent determination of the visibility status of the anchor list item, thereby ensuring the accuracy of the page turning reference position and improving the reliability of page turning and the user's browsing experience.

[0162] In one implementation, the method further includes: Get the height of the visible area of ​​the list and the height of each logical row in the target list; The target ratio is obtained based on the height of the visible area of ​​the list and the height of each logical row in the target list; The target ratio is rounded down to obtain the target number of scroll rows.

[0163] In the embodiments of this application, the height of the visible area of ​​the list and the height of each logical row in the target list are obtained. A target ratio is obtained based on the height of the visible area of ​​the list and the height of each logical row in the target list, and the target ratio is rounded down to obtain the target number of scrolling rows. In the vehicle display interface, the height of the visible area on the central control screen used to display the grid list is obtained, and the height of the logical rows in the list is obtained. The ratio between the two is calculated and rounded down to obtain the number of logical rows that should be scrolled in one page turn. Since rounding down ensures that the logical rows corresponding to the target number of scrolling rows can be fully displayed in the visible area of ​​the list, it avoids the problem of some rows being truncated or skipped due to the target number of scrolling rows being too large, thereby further improving the accuracy of page turning and the user's browsing experience.

[0164] For example, such as Figure 5 As shown, target list 500 is a grid list displayed on the vehicle's central control screen, with a maximum number of columns C=3, and the height of the visible area 501 is 800 pixels. The height of each logical row in target list 500 is obtained. In a mixed layout, the height of each logical row in target list 500 is 400 pixels. The target ratio is calculated as 800÷400=2.0. Rounding down the target ratio, the target scrolling row count is 2. That is, one page turn is expected to move 2 logical rows. If a target scroll command is detected, in response to this command, page turning is performed with a step size of 2 target scrolling rows. After scrolling, the content of 2 logical rows is fully displayed in the visible area of ​​the list.

[0165] It should be understood that when obtaining the height of each logical row in the target list, if the heights of each row are inconsistent under a mixed layout, the target height of each logical row in the target list should be obtained.

[0166] Specifically, the target height can be the average height of all logical rows in the target list, the height of the logical row that appears most frequently in the target list (i.e., the mode), or the standard row height defined in the list layout parameters.

[0167] For example, assume the target list is a grid list displayed on a car's central control screen, with a maximum number of columns C=3 and a visible area height of 800 pixels. Obtain the height of each logical row in the target list. Assume there are three different heights of logical rows in a mixed layout: a normal icon row (200 pixels), a promotional card row (300 pixels), and a full-size row (250 pixels). Calculate the target height of the logical row using a weighted average: 200 pixels. Based on the visible area height of 800 pixels and the target height of 200 pixels, calculate the target ratio: 800 ÷ 200 = 4.0. Rounding down the target ratio, we get a target scrolling row count of 4.

[0168] Optionally, for a mixed list containing multiple card heights, the target height can be calculated by a weighted average, where the weight can be the proportion of each logical row in the target list.

[0169] In another possible implementation, when the target number of scroll rows is obtained based on the target ratio, the target ratio can be rounded to the nearest integer or rounded up.

[0170] It should be understood that in some application scenarios, users may want to scroll through more content in one page, even if the last line is partially cropped after page turning, in which case rounding up can be used.

[0171] Optionally, the target number of scroll rows can be a pre-configured fixed row increment, eliminating the need for dynamic calculation based on the height of the list's visible area. For example, users can set each page to scroll 2 or 3 rows according to their browsing habits. The user-defined page count can be stored, and upon receiving a target scroll instruction, this fixed value can be directly retrieved as the target number of scroll rows.

[0172] Optionally, if the height differences of the logical rows in the target list are large (for example, the ratio of the highest row height to the lowest row height is greater than a preset threshold), the heights of multiple logical rows can be obtained, and the corresponding target scrolling rows can be calculated separately.

[0173] For example, when there are taller and shorter logical rows in the target list, the target scrolling row number based on the taller logical row and the target scrolling row number based on the shorter logical row can be calculated separately. The corresponding target scrolling row number can be dynamically selected for page turning based on the area where the currently viewed content is located, so as to improve the flexibility of page turning.

[0174] Optionally, the target number of scroll rows can be calculated before each page turn, or it can be pre-calculated and stored in the cache.

[0175] For example, when the list layout changes (e.g., screen rotation, list item height change, or interface change), the target number of scroll rows can be recalculated and the cache updated; when the list layout does not change, the target number of scroll rows can be read directly from the cache without recalculation, reducing computational overhead.

[0176] In some possible implementations, the target number of scroll rows may be limited by the total number of rows in the target list. If the calculated target number of scroll rows is greater than the total number of rows in the target list, the target number of scroll rows can be adjusted to the total number of rows to avoid exceeding the list boundaries when turning pages.

[0177] For example, if the target list contains only 3 logical rows, and the calculated target number of scroll rows is 5, then the target number of scroll rows is adjusted to 3 to ensure that one page turn scrolls to the bottom of the list at most.

[0178] In the above implementation, the target number of scroll rows is obtained by obtaining the height of the list's visible area and the height of the logical rows in the target list, and then rounding down the ratio of the list's visible area height to the logical row height in the target list. Since the target number of scroll rows indicates the number of logical rows expected to be moved in one page turn, and the ratio of the list's visible area height to the logical row height reflects the number of logical rows that can be fully displayed within the list's visible area, determining the target number of scroll rows based on this ratio ensures that the target number of scroll rows matches the display capacity of the list's visible area. Because of the rounding down operation, it ensures that all logical rows corresponding to the target number of scroll rows can be fully displayed within the list's visible area, avoiding the problem of some rows being truncated or skipped due to an excessively large target number of scroll rows, thus improving the accuracy of page turning and the user's browsing experience.

[0179] S402: Starting from the anchor list item, traverse the list items adjacent to the anchor list item to obtain the cumulative width of the list items.

[0180] The cumulative width, also known as the accumulated width, the traversed width, or the width accumulation value, is used to represent the sum of the width occupied by the traversed list items during the process of traversing each list item starting from the anchor list item.

[0181] In the embodiments of this application, starting from the anchor list item, the list items adjacent to the anchor list item are traversed to obtain the cumulative width of the list items.

[0182] Specifically, starting from the anchor list item, each list item adjacent to the anchor list item is visited sequentially along the target scrolling direction. For each list item visited, its occupied width is obtained and added to the cumulative width. When scrolling down, starting from the anchor list item, one or more list items after the anchor list item are visited sequentially, and their occupied widths are obtained and added together. When scrolling up, starting from the anchor list item, one or more list items before the anchor list item are visited sequentially, and their occupied widths are obtained and added together. Through this traversal process, the actual width of each list item along the page-turning path can be dynamically obtained and accumulated to obtain the cumulative width, providing a data foundation for subsequent identification of logical line boundaries and determination of target list items.

[0183] For example, in the target list, the division of each logical row is determined by the column span of each list item within it. Specifically, starting from the first list item, the list is scanned sequentially in ascending order of index, maintaining the number of columns S occupied by the current logical row, initially set to 0. For the currently traversed list item i, its occupied column count s(i) is obtained and added to S, i.e., S = S + s(i), while the actual number of list items n_j in this logical row is incremented by 1. When S equals the maximum number of columns C of the target list (i.e., the row width of the visible area of ​​the list), the current logical row is considered closed, the actual number of list items in this logical row is n_j, and S is cleared to identify the next logical row. After traversing all list items in the above manner, the index of the last list item of each logical row and its actual number of list items can be obtained.

[0184] For example, such as Figure 5 As shown in (a), Figure 5(a) includes a target list 500, a list view area 501, and an anchor list item 502. The target list 500 includes list items 1 to 12, a total of 12 list items, with a maximum column count C=3. The list view area 501 displays all the content of list items 1 to 6. The anchor list item 502 is the last visible list item in the list view area 501, i.e., list item 6. Assuming a user voice command is detected, in response to the voice command, a target scroll command is obtained, the target scroll direction is determined to be downward scrolling, and starting from list item 6, the list items adjacent to list item 6 are traversed sequentially in the downward direction. First, list item 7 is traversed, its occupied width (occupying 1 column) is obtained, and the cumulative width is updated to 1; list item 8 is traversed, its occupied width (occupying 1 column) is obtained, and the cumulative width is updated to 2; list item 9 is traversed, its occupied width (occupying 1 column) is obtained, and the cumulative width is updated to 3. At this point, the cumulative width reaches the row width of the visible list area (C=3), confirming that the current logical row is closed. Continue traversing the list items of the next logical row until the row count reaches the target number of scroll rows.

[0185] Alternatively, in another implementation, the total height of the traversed list items can be checked during the traversal. If the total height of the traversed list items reaches the height of the list's visible area, the traversal stops.

[0186] For example, when there are items in the list that span multiple columns or fill an entire row, even though the cumulative width has not yet reached the row width, the total height of the traversed list items has already filled the visible area of ​​the list. If traversal continues, it will cause the list to exceed the visible area after page turning. In this case, traversal is stopped, and the currently traversed list item is determined as the target list item.

[0187] It should be understood that cumulative width can be measured using various methods. For a target list using a grid layout, the width occupied by a list item can be measured by the number of columns it occupies, and the cumulative width is the cumulative number of columns occupied. For a target list using an absolute pixel layout, the width occupied by a list item can be measured by the pixel value, and the cumulative width is the cumulative pixel width. Different measurement methods can be used to determine whether the cumulative width has reached the row width, and the appropriate measurement method can be adaptively selected based on the layout type of the target list.

[0188] S403, obtain the row count value based on the cumulative width of the list item and the row width of the visible area of ​​the list, and determine the currently traversed list item as the target list item when the row count value reaches the target number of scroll rows.

[0189] In the embodiments of this application, during the traversal process, a row count value is obtained based on the cumulative width and the row width of the visible area of ​​the list. That is, it is detected in real time whether the cumulative width of the list item has reached the row width of the visible area of ​​the list. When it has, the row count value is updated, and when the row count value reaches the target number of scrolling rows, the currently traversed list item is determined as the target list item.

[0190] For example, such as Figure 5 As shown in (a), Figure 5 (a) includes a target list 500, a list view area 501, and an anchor list item 502. The target list 500 includes list items 1 to 12, a total of 12 list items, with a maximum column count C=3. The list view area 501 displays all the content of list items 1 to 6. The anchor list item 502 is the last visible list item in the list view area 501, i.e., list item 6. Assuming a user voice command is detected, in response to the voice command, a target scroll command is obtained, the target scroll direction is determined to be downward scrolling, and starting from list item 6, the list items adjacent to list item 6 are traversed sequentially in the downward direction. First, list item 7 is traversed, its occupied width (occupying 1 column) is obtained, and the cumulative width is updated to 1; list item 8 is traversed, its occupied width (occupying 1 column) is obtained, and the cumulative width is updated to 2; list item 9 is traversed, its occupied width (occupying 1 column) is obtained, and the cumulative width is updated to 3. At this point, the cumulative width reaches the row width of the list's visible area (C=3), confirming that the current logical row is closed. Continue traversing the list items of the next logical row until the row count reaches the target scroll row count. The corresponding list item is then designated as the target list item, and the target list 500 is scrolled, displaying the scrolled target list 500 in the list's visible area 501. For example... Figure 5 (b) shows the display effect after scrolling. The complete content of list item 7 and list item 8 is displayed in the visible area 501 of the list, realizing accurate page turning by line.

[0191] In one implementation, the row count value is obtained based on the cumulative width of the list items and the row width of the list's visible area. When the row count value reaches the target number of scroll rows, the currently traversed list item is identified as the target list item. This can include: When the cumulative width of the list items reaches the row width of the list's visible area, update the row count and clear the cumulative width.

[0192] In the embodiments of this application, when the cumulative width reaches the row width, it indicates that the current logical row has been completely closed. The row count value is updated and the cumulative width is cleared, and the traversal of the next logical row continues. When the row count value reaches the target number of scrolling rows, the currently traversed list item is determined as the target list item.

[0193] It should be understood that the boundaries of logical rows are identified by comparing the cumulative width of list items with the row width. A row count is used to record the number of logical rows that have been traversed. When the number of traversed logical rows reaches the target scrolling row count, the target list item is determined. In a downward scrolling scenario, the list is traversed downwards starting from the anchor list item, accumulating the width occupied by each list item. When the cumulative width equals the row width, a logical row is considered closed, and the row count is incremented. When the row count equals the target scrolling row count, the currently traversed list item is determined as the target list item.

[0194] During the traversal, a row count is maintained, initially set to 0. For each list item, its occupied width is incremented into the cumulative width, and then compared to the row width. If the cumulative width equals the row width, the current logical row is considered fully closed, the row count is incremented, and the cumulative width is reset to zero. If the cumulative width is less than the row width, the current logical row is not yet closed, and the traversal continues to the next list item.

[0195] When the row count reaches the target number of scroll rows, the currently traversed list item becomes the target list item. Traversal stops at this point, and the sequence number of the target list item is recorded as the target position for subsequent target scroll instructions. If the traversal reaches the boundary of the target list (i.e., the first or last list item) but the row count has not yet reached the target number of scroll rows, traversal stops, and the boundary list item is designated as the target list item.

[0196] It should be noted that the difference between the interface display method provided in this application embodiment and the second prior art lies in the conversion method of the item number step size. The second prior art uses a fixed number of rows r as the page turning step size, that is, each page turn intends to advance or retreat r logical rows. The second prior art assumes that the number of items in each logical row of the target list is always a fixed value C (C is usually taken as the maximum number of columns in the grid), and according to Δ B =r C calculates the number of terms and the step size, where Δ B The step size is used to represent the item number, r represents the fixed page-turning step size, and C represents the number of items in each logical row; after determining the anchor list item A, the target list item number T... B =A±Δ B Where A is the item number of the anchor list item, Δ B T is used to indicate the step size of the number of terms. B This is used to indicate the target list item to which a page is turned from the anchor list item. In this type of scrolling method, the item number step size is Δ. BThe actual number of items in each logical row on the page-turning path is irrelevant. However, this embodiment dynamically calculates the item count step size based on the actual number of items n_j in each logical row on the page-turning path, i.e., Δ = n1 + n2 + ... + n_r1, where Δ represents the item count step size of this scheme, r1 represents the target scrolling row number, and n_j represents the actual number of list items in the j-th logical row on the page-turning path, with j ranging from 1 to r1. After determining the anchor list item A, r1 logical rows are moved along the target scrolling direction, and the end list item of the corresponding logical row is taken as the target list item T. The item count step size in this embodiment adaptively changes with the row structure on the page-turning path, avoiding the landing point deviation problem caused by the fixed item count conversion in scheme B.

[0197] Optionally, during the traversal, if the width occupied by the currently traversed list item is greater than the row width of the list's visible area (i.e., the horizontal size of the list item exceeds the maximum width of a row), then the list item is defined as a separate logical row, and the excess portion of the list item is truncated. For example, when there are list items in the list whose width exceeds the row width, the list item can be scaled to fit the row width, or the list item can occupy a separate row and allow horizontal scrolling to view its full content.

[0198] In the above implementation, the cumulative width of the list items is monitored in real time during traversal. When the cumulative width reaches the row width of the visible list area, the row count is updated and the cumulative width is cleared. When the row count reaches the target scroll row number, the currently traversed list item is identified as the target list item. Since reaching the row width indicates the complete closure of a logical row, the increment of the row count and the clearing of the cumulative width can accurately record the number of rows traversed on a logical row-by-row basis. This avoids the row count deviation caused by paging according to a fixed number of items in related technologies. Therefore, it can ensure that in a mixed grid with a variable number of items per row, when the accumulated row count reaches the target scroll row number, the currently traversed list item is identified as the target list item. The target list item falls exactly at the end of the row of the target scroll row number. Paging according to the target list item can achieve accurate paging by row, ensuring that the target list item is fully displayed and the landing point is correct, thereby improving the user's browsing experience.

[0199] In one implementation, the method further includes: Get the height of each logical row that has been traversed, where the height of a logical row is the maximum height of the list items within that logical row; Sum the heights of all the logical rows that have been traversed to obtain the cumulative height; The row count is calculated based on the cumulative width of the list items and the row width of the list's visible area. When the row count reaches the target number of scroll rows, the currently traversed list item is identified as the target list item, including: When the row count reaches the target number of scroll rows and the cumulative height does not exceed the height of the visible list area, the currently traversed list item is determined as the target list item.

[0200] In the embodiments of this application, the height of each traversed logical row can be obtained during the traversal process. The height of each logical row is the maximum height of all list items within that row. Since in a grid list layout, list items may have different heights.

[0201] For example, assume the height of the list's visible area is 400 pixels and the target number of scrolling rows is 2. If the current anchor list item is list item 6, the traversal starts from list item 6 and proceeds downwards. First, it traverses to the first logical row containing list items 7, 8, and 9. The height of list items 7, 8, and 9 in this logical row is 200 pixels. It continues traversing to the second logical row containing list items 10, 11, and 12. If the height of list items 10, 11, and 12 in this logical row is 150 pixels, it is summed with the height of the first logical row, resulting in a cumulative height of 350 pixels, which is less than the 400-pixel height of the list's visible area. Therefore, the currently traversed list item 12 is determined as the target list item, and the target list is scrolled to list item 12, displaying the scrolled target list in the list's visible area. After scrolling, the two logical rows mentioned above are fully displayed in the list's visible area.

[0202] For example, assume the visible area of ​​the list has a height of 400 pixels and the target number of scrolling rows is 2. If the current anchor list item is list item 6, the traversal starts from list item 6 and proceeds downwards. First, it traverses to the first logical row containing list items 7, 8, and 9. In this logical row, the height of list items 7, 8, and 9 is 200 pixels. It continues traversing to the second logical row containing list items 10, 11, and 12. If the height of list items 10, 11, and 12 in this logical row is 300 pixels, it is summed with the height of the first logical row, resulting in a cumulative height of 500 pixels, which exceeds the visible area of ​​the list by 400 pixels. Therefore, list item 9 is identified as the target list item, and the target list is controlled to scroll to list item 9, displaying the scrolled target list in the visible area of ​​the list.

[0203] In the above implementation, since the height of each logical row is the maximum value of the height of each list item in that row, it can reflect the actual height occupied by the logical row in the vertical direction. Furthermore, by comparing the cumulative height with the height of the visible area of ​​the list, it can ensure that the logical rows that have been traversed after page turning do not exceed the visible area in the vertical direction. This avoids blank or half-line appearances in the visible area after page turning in mixed layout scenarios with large differences in row height, further improving the visual effect of page turning and the user's browsing experience.

[0204] In one implementation, the method further includes: When the cumulative width of a list item exceeds the line width of the visible list area, the currently traversed list item is determined as the list item at the beginning of the next logical line, and a placeholder is set at the currently traversed position.

[0205] In the embodiments of this application, during the traversal process, if the cumulative width of the list items exceeds the row width of the visible list area, it indicates that the currently traversed list item cannot be fully displayed in the current logical row. In this case, the currently traversed list item is determined as the list item located at the beginning of the next logical row, and a placeholder is set at the currently traversed position.

[0206] For example, when a logical row's width exceeds the visible row width of the list, the list item exceeding the logical row is used as the starting item for the next logical row, and the accumulation of the next logical row's width restarts. A placeholder is set at the currently traversed position to mark the truncation point of the current logical row where it exceeds the row width. For instance, when the target list is a three-column grid, if the current logical row has accumulated a width of 2, and the next traversed list item occupies a width of 2, the accumulated width is updated to 4, exceeding the row width of 3. In this case, the list item is determined as the starting list item of the next logical row, and a placeholder is set at the end of the current logical row to mark that the row is truncated when the accumulated width reaches 2. This method avoids list items being truncated across rows, and the placeholder provides row boundary markers for subsequent traversal and pagination, further improving the accuracy of pagination and the stability of list scrolling.

[0207] For example, obtain the width w occupied by the currently traversed list item and the current cumulative width S. If S + w > W, where W represents the row width of the visible list area, then it is determined that the cumulative width of the list item exceeds the row width of the visible list area. Record the end position of the current logical row as the position corresponding to S (i.e., the position after the last list item before the currently traversed list item), set a placeholder at that position, and then determine the currently traversed list item as the beginning list item of the next logical row.

[0208] Optionally, the placeholder may include the following information: the end position of the current logical row (i.e., the position of the last list item when the width exceeds the visible area of ​​the list), the row number of the current logical row, and the number of list items already contained in the current logical row. The placeholder can be stored in the layout data structure of the target list, and the end position of each logical row can be quickly located based on the placeholder during subsequent traversal.

[0209] In one embodiment, the placeholder can be set by adding a placeholder marker for the current logical row in the layout data structure of the target list. The placeholder marker includes the end position information of the current logical row.

[0210] Optionally, the placeholder mark may include width information.

[0211] In some possible embodiments, the placeholder may include a truncation identifier to indicate that the logical row is truncated at the line width that exceeds the visible area of ​​the list, and that the currently traversed list item is determined to be the list item at the beginning of the next logical row.

[0212] In some possible implementations, if the width occupied by the currently traversed list item is greater than or equal to the row width of the visible list area, then the list item is determined as a separate logical row.

[0213] For example, assume the target list has a three-column grid layout with a maximum column count C=3, meaning the row width of the visible list area is 3. Starting from the anchor list item (e.g., list item 6), traverse the adjacent list items downwards. The current logical row has accumulated a width of 2 (assuming list items 7 and 8 have already been traversed, each occupying 1 column), and continue traversing list item 9. List item 9 is a cross-column item, occupying 2 columns. The width occupied by list item 9 is obtained as 2, and the accumulated width is updated to 2+2=4. At this point, the accumulated width of 4 is greater than the row width of 3, determining that list item 9 cannot be fully contained in the current logical row. List item 9 is designated as the list item at the beginning of the next logical row, and a placeholder is set at the currently traversed position (i.e., the position where list item 9 is located) to mark that the current logical row is truncated where it exceeds the row width. The truncation position is at the accumulated width of 2 (i.e., after list item 8). After controlling the scrolling of the target list, the scrolled target list is displayed in the visible area of ​​the list. List item 9 is fully displayed at the beginning of the next logical line. List items 7 and 8 in the current logical line form a row, and the end of the row is marked by a placeholder. The placeholder itself does not occupy display space.

[0214] In some possible implementations, after the placeholders are set, they can be stored, specifically in the layout cache of the target list. When paging the same target list again, the placeholder information is read from the cache to determine the row boundaries, eliminating the need to re-perform width accumulation and overwidth detection.

[0215] It should be understood that if the cumulative width equals the line width, no placeholder is set; a placeholder is only set when the cumulative width is greater than the line width. For example, when a logical line is closed normally (the cumulative width is exactly equal to the line width), there is no need to set a placeholder to mark it; only when a logical line is truncated due to exceeding the width requirement is a placeholder needed to mark the truncation position.

[0216] It should be noted that the visibility of placeholders on the display device's interface can be set to invisible. That is, placeholders are not displayed as actual visual elements in the visible area of ​​the list, but are only used to mark row boundaries at the logical level. In other words, placeholders can be stored in the layout parameters of the target list as data markers, rather than being rendered on the screen as view elements.

[0217] In some possible implementations, after setting a placeholder, it can be associated with a list item in the current logical row. For example, the placeholder can store the index of the last list item in the current logical row, allowing for quick location of the last list item in that logical row during subsequent traversal.

[0218] In the above implementation, when the cumulative width of a list item exceeds the row width of the visible list area during traversal, the currently traversed list item is determined as the list item at the beginning of the next logical row, and a placeholder is set at the current traversed position. Since the cumulative width exceeds the row width, it means that the currently traversed list item can no longer be fully contained in the current logical row. By moving the list item to the next logical row and setting a placeholder, the end boundary of the current logical row can be accurately defined, further improving the accuracy of page turning and the stability of list scrolling.

[0219] S404 controls the scrolling of the target list based on the target list items, and displays the scrolled target list in the visible area of ​​the list.

[0220] In the embodiments of this application, after determining the target list item, the sequence number of the target list item is obtained, and the position of the target list item in the target list is determined according to the sequence number. The target list is then controlled to move along the target scrolling direction, so that the target list item is displayed in the list's visible area. After scrolling is complete, the scrolled target list is displayed in the list's visible area, with the target list item aligned with the edge of the list's visible area and fully displayed in the target scrolling direction. In a downward scrolling scenario, the target list item is scrolled to the bottom edge of the list's visible area, so that the target list item is fully displayed at the bottom of the list's visible area; in an upward scrolling scenario, the target list item is scrolled to the top edge of the list's visible area, so that the target list item is fully displayed at the top of the list's visible area.

[0221] In one embodiment, the target list is scrolled by the item number.

[0222] Specifically, the index of the target list item is passed as a parameter to the scroll control interface, which calculates the position offset of the target list item in the target list and controls the target list to move to that position, so that the target list item is aligned with the edge of the visible area of ​​the list in the target scroll direction and is fully displayed.

[0223] Optionally, after scrolling is complete, the display status of the target list item can be verified, including: obtaining the position information of the target list item in the visible area of ​​the list, confirming that the upper and lower boundaries of the target list item are both between the upper and lower boundaries of the visible area of ​​the list; if the content of the target list item is not fully displayed in the visible area of ​​the list, then the target list item is finely adjusted (for example, scrolling a few pixels again) until the content of the target list item is fully displayed in the visible area of ​​the list.

[0224] In some possible embodiments, after the target list is scrolled to a target list item, the target list item can be highlighted or marked. For example, a highlighted border can be displayed around the target list item or its background color can be changed to indicate the current page position to the user, improving the user's perception of the operation.

[0225] For example, such as Figure 5 As shown, Figure 5 (a) includes the target list 500, the list view area 501, and the anchor list item 502. Assume the anchor list item 502 is list item 6, and the target list item is list item 8. Obtain the index of list item 8, and control the target list 500 to scroll downwards by the target list item index, so that list item 8 is displayed in the list view area 501. After scrolling is complete, as shown... Figure 5As shown in (b), list item 8 is located at the bottom edge of the list's visible area 501, and its content is fully displayed.

[0226] In some possible embodiments, when controlling the scrolling of the target list, if the index of the target list item is less than the index of the first visible list item in the current list's visible area, the target list is controlled to scroll upwards so that the target list item appears at the top of the list's visible area; if the index of the target list item is greater than the index of the last visible list item in the current list's visible area, the target list is controlled to scroll downwards so that the target list item appears at the bottom of the list's visible area.

[0227] Optionally, feedback can be sent after the list has finished scrolling.

[0228] For example, users can be informed of the page turning by voice prompts or by visual prompts on the screen (such as a page turning animation end indicator), so that users can know the page turning result in a timely manner.

[0229] Optionally, controlling the target list to scroll to a target list item may also include controlling the target list to scroll to the beginning or end of the logical line to which the target list item belongs.

[0230] For example, when scrolling down, the target list is controlled to scroll to the end of the logical line containing the target list item, aligning the end item of that logical line with the bottom edge of the list's visible area. When scrolling up, the target list is controlled to scroll to the beginning of the logical line containing the target list item, aligning the beginning item of that logical line with the top edge of the list's visible area. This ensures that the entire logical line is displayed completely within the list's visible area, further enhancing the user's browsing experience.

[0231] In the above embodiment, after receiving the target scroll instruction, the anchor list item can be determined from the list's visible area, that is, the base scroll position corresponding to the subsequent target scroll instruction can be determined. Then, starting from the anchor list item, adjacent list items are traversed to obtain the cumulative width of the list items. Based on the cumulative width of the traversed list items, the row width of the list's visible area, and the target scroll row number, the target list item is determined. Finally, the target list is scrolled based on the target list item, and the scrolled target list is displayed in the list's visible area. Compared to existing technologies that suffer from line skipping and misalignment due to the variable number of items per row, this solution traverses from the anchor list item. It first calculates a row count based on the cumulative width of the list items and the row width of the visible list area. When the row count reaches the target scroll row number, the currently traversed list item is identified as the target list item. Therefore, in determining the target list item, the cumulative width is compared with the row width of the visible list area to identify the boundary of each row and generate a row count. Combined with the target scroll row number, the number of traversed rows is counted, ensuring the target list item is positioned at the corresponding scroll position. Scrolling is then performed based on the target list item, ensuring accurate landing points during page turning. Therefore, this solution enables accurate row-by-row page turning in mixed grid lists, ensuring accurate landing points for target list items, avoiding content omissions, and thus improving the user's browsing experience.

[0232] The following is combined with Figure 6 Another method for displaying an interface provided in the embodiments of this application will be described in detail.

[0233] Figure 6 This is a schematic flowchart illustrating another interface display method provided in an embodiment of this application. For example... Figure 6 As shown, method 600 includes S601 to S608, which are described in detail below.

[0234] For example, Figure 6 The method 600 shown is executed by the vehicle's onboard multimedia host.

[0235] S601, when detecting a voice page-turning command issued by the user, performs semantic parsing on the voice page-turning command and recognizes that the user's intention is to turn down the page.

[0236] For example, the system receives voice commands and performs semantic parsing to identify whether the user intends to scroll down or up. The voice command is then converted into a corresponding target scrolling command, and the target scrolling direction is determined. If the user issues a "next page" voice command, the target scrolling direction is downward; if the user issues a "previous page" voice command, the target scrolling direction is upward.

[0237] Alternatively, the implementation of S601 can be found in [reference needed]. Figure 4 The relevant descriptions in S401 will not be repeated here.

[0238] S602, Determine the anchor list item from the list view area.

[0239] For example, the system retrieves the edge list items in the visible area of ​​the list along the target scrolling direction (i.e., the last visible list item when scrolling down, and the first visible list item when scrolling up), determines the logical row to which the edge list item belongs, and identifies the list item at the end of the logical row (when scrolling down) or the list item at the beginning of the row (when scrolling up) as the anchor list item. The anchor list item is used to indicate the reference scroll position corresponding to the target scroll command.

[0240] Alternatively, the implementation of S602 can be found in [reference needed]. Figure 4 The relevant descriptions in S401 will not be repeated here.

[0241] S603, determine whether the visibility status of the anchor list item is partially displayed; if yes, execute S604; if no, execute S605.

[0242] For example, obtain the upper and lower boundary positions of the anchor list item, as well as the upper and lower boundary positions of the list's visible area; if both the upper and lower boundary positions of the anchor list item are between the upper and lower boundary positions of the list's visible area, then it is determined that the content of the anchor list item is fully displayed, and the target scroll row number can be obtained for subsequent traversal, and S605 is executed; if at least one of the upper and lower boundary positions of the anchor list item is not between the upper and lower boundary positions of the list's visible area, then it is determined that the content of the anchor list item is not fully displayed, and the anchor list item needs to be re-determined, and S604 is executed.

[0243] Alternatively, the implementation of S603 can be found in [reference needed]. Figure 4 The relevant descriptions in S401 will not be repeated here.

[0244] S604, update the anchor list item to the list item at the end of the row above the current anchor list item.

[0245] For example, after determining that the visibility state of an anchor list item is not fully displayed, the anchor list item is updated according to the target scrolling direction. Specifically, if the target scrolling direction is downward, the anchor list item is updated to the list item located at the end of the first logical row, where the first logical row is the adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction (i.e., upward); if the target scrolling direction is upward, the anchor list item is updated to the list item located at the beginning of the second logical row, where the second logical row is the adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction (i.e., downward).

[0246] Alternatively, the implementation of S604 can be found in [reference needed]. Figure 4 The relevant descriptions in S401 will not be repeated here.

[0247] S605, Get the target number of scroll rows.

[0248] For example, the height of the visible area of ​​the list and the height of each logical row in the target list are obtained. A target ratio is calculated based on these ratios, and the target ratio is rounded down to obtain the target number of rows to scroll. In the vehicle display interface, the height of the visible area on the central control screen used to display the grid list is obtained, along with the height of each logical row in the list. The ratio between the two is calculated and rounded down to obtain the number of logical rows that should scroll in one page turn.

[0249] Alternatively, the implementation of S605 can be found in [reference needed]. Figure 4 The relevant descriptions in S401 will not be repeated here.

[0250] S606: Starting from the updated anchor list item, traverse downwards to the adjacent list items.

[0251] For example, starting from the anchor list item, each list item adjacent to the anchor list item is visited sequentially along the target scrolling direction. For each list item visited, its occupied width is obtained and added to the cumulative width. When scrolling down, starting from the anchor list item, one or more list items after the anchor list item are visited sequentially, and their occupied widths are obtained and added together. When scrolling up, starting from the anchor list item, one or more list items before the anchor list item are visited sequentially, and their occupied widths are obtained and added together. Through this traversal process, the actual width of each list item along the page-turning path can be dynamically obtained and accumulated to obtain the cumulative width, providing a data foundation for subsequent identification of logical line boundaries and determination of target list items.

[0252] Alternatively, the implementation of S606 can be found in [reference needed]. Figure 4The relevant descriptions in S402 will not be repeated here.

[0253] S607, when the row count value is detected to have reached the target number of scroll rows, the target list item is determined.

[0254] For example, during the traversal, the cumulative width of the list items is checked in real time to see if it reaches the row width of the visible list area. When the cumulative width reaches the row width, it indicates that the current logical row has been completely closed. The row count is updated and the cumulative width is cleared, and the traversal continues to the next logical row. When the row count reaches the target number of scroll rows, the currently traversed list item is determined as the target list item.

[0255] Alternatively, the implementation of S607 can be found in [reference needed]. Figure 4 The relevant descriptions in S403 will not be repeated here.

[0256] S608 controls list scrolling based on target list items, displaying the scrolled list in the visible area of ​​the list.

[0257] For example, the index of the target list item is passed as a parameter to the scroll control interface, which calculates the position offset of the target list item in the target list and controls the target list to move to that position, so that the target list item is aligned with the edge of the visible area of ​​the list in the target scroll direction and is fully displayed.

[0258] Alternatively, the implementation of S608 can be found in [reference needed]. Figure 4 The relevant descriptions in S404 will not be repeated here.

[0259] In the above embodiment, after receiving the target scroll instruction, the anchor list item can be determined from the list's visible area, that is, the base scroll position corresponding to the subsequent target scroll instruction can be determined. Then, starting from the anchor list item, adjacent list items are traversed to obtain the cumulative width of the list items. Based on the cumulative width of the traversed list items, the row width of the list's visible area, and the target scroll row number, the target list item is determined. Finally, the target list is scrolled based on the target list item, and the scrolled target list is displayed in the list's visible area. Compared to existing technologies that suffer from line skipping and misalignment due to the variable number of items per row, this solution traverses from the anchor list item. It first calculates a row count based on the cumulative width of the list items and the row width of the visible list area. When the row count reaches the target scroll row number, the currently traversed list item is identified as the target list item. Therefore, in determining the target list item, the cumulative width is compared with the row width of the visible list area to identify the boundary of each row and generate a row count. Combined with the target scroll row number, the number of traversed rows is counted, ensuring the target list item is positioned at the corresponding scroll position. Scrolling is then performed based on the target list item, ensuring accurate landing points during page turning. Therefore, this solution enables accurate row-by-row page turning in mixed grid lists, ensuring accurate landing points for target list items, avoiding content omissions, and thus improving the user's browsing experience.

[0260] The above text combined Figures 1 to 6 This application provides a detailed description of an interface display method based on an embodiment; the following will be combined with... Figure 7 and Figure 8 The apparatus embodiments of this application are described in detail below. It should be understood that the apparatus in the embodiments of this application can perform the various methods described in the foregoing embodiments of this application, that is, the specific working processes of the various products described below can be referred to the corresponding processes in the foregoing method embodiments.

[0261] Figure 7 This is a schematic diagram of the structure of a display device for an interface provided in an embodiment of this application. The display device 700 includes a processing module 701.

[0262] The processing module 701 is used to respond to a target scrolling command by determining the anchor list item and the target scrolling row number in the visible area of ​​the list. At least one list item in the target list is displayed in the visible area of ​​the list, and the anchor list item is used to indicate the reference scrolling position corresponding to the target scrolling command. Starting from the anchor list item, the module traverses the list items adjacent to the anchor list item to obtain the cumulative width of the list items. Based on the cumulative width of the list items and the row width of the visible area of ​​the list, the module obtains a row count value. When the row count value reaches the target scrolling row number, the module determines the currently traversed list item as the target list item. Based on the target list item, the module controls the scrolling of the target list and displays the scrolled target list in the visible area of ​​the list.

[0263] Optionally, as an embodiment, the processing module 701 is specifically used to: update the row count value and clear the cumulative width when the cumulative width of the list item reaches the row width of the visible area of ​​the list.

[0264] Optionally, as an embodiment, the processing module 701 is specifically used to: obtain the height of each traversed logical row, wherein the height of the logical row is the maximum height of the list item within the logical row; sum the heights of each traversed logical row to obtain the cumulative height; obtain a row count value based on the cumulative width of the list item and the row width of the list's visible area, and determine the currently traversed list item as the target list item when the row count value reaches the target scroll row number, including: determining the currently traversed list item as the target list item when the row count value reaches the target scroll row number and the cumulative height does not exceed the height of the list's visible area.

[0265] Optionally, as an embodiment, the processing module 701 is further configured to: determine the target scrolling direction based on the target scrolling instruction, the target scrolling direction including upward scrolling and downward scrolling; and traverse the list items adjacent to the anchor list item as the starting position to obtain the cumulative width of the list items, including: traversing the list items adjacent to the anchor list item along the target scrolling direction as the starting position to obtain the cumulative width of the list items.

[0266] Optionally, as an embodiment, the processing module 701 is further configured to: determine the visibility state of the anchor list item, wherein the visibility state is used to indicate whether the content in the anchor list item is fully displayed within the visible area of ​​the list; and update the anchor list item based on the target scrolling direction corresponding to the target scrolling instruction when the visibility state indicates that the content of the anchor list item is not fully displayed within the visible area of ​​the list.

[0267] Optionally, as an embodiment, the processing module 701 is specifically used to: when the target scrolling direction is downward, update the anchor list item to the list item located at the end of the first logical row, wherein the first logical row is an adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction to the target scrolling direction; when the target scrolling direction is upward, update the anchor list item to the list item located at the beginning of the second logical row, wherein the second logical row is an adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction to the target scrolling direction.

[0268] Optionally, as an embodiment, the processing module 701 is further configured to: obtain the upper and lower boundary positions of the anchor list item, and the upper and lower boundary positions of the list's visible area; determine the visibility state of the anchor list item, including: when both the upper and lower boundary positions of the anchor list item are between the upper and lower boundary positions of the list's visible area, determining that the visibility state indicates that the content of the anchor list item is fully displayed within the list's visible area; when at least one of the upper and lower boundary positions of the anchor list item is not between the upper and lower boundary positions of the list's visible area, determining that the visibility state indicates that the content of the anchor list item is not fully displayed within the list's visible area.

[0269] Optionally, as an embodiment, the processing module 701 is further configured to: obtain the area of ​​the overlapping area between the anchor list item and the visible area of ​​the list; determine the visibility state of the anchor list item, including: determining the visibility state of the anchor list item based on a target ratio between the area of ​​the overlapping area and the area of ​​the anchor list item.

[0270] Optionally, as an embodiment, the processing module 701 is specifically used to: determine that the content of the visible status indicator anchor list item is fully displayed in the visible area of ​​the list when the target ratio is greater than or equal to the preset ratio; and determine that the content of the visible status indicator anchor list item is not fully displayed in the visible area of ​​the list when the target ratio is less than the preset ratio.

[0271] Optionally, as an embodiment, the processing module 701 is further configured to: obtain the height of the visible area of ​​the list and the height of each logical row in the target list; obtain a target ratio based on the height of the visible area of ​​the list and the height of each logical row in the target list; and round down the target ratio to obtain the target number of scroll rows.

[0272] Optionally, as an embodiment, the processing module 701 is further configured to: determine the currently traversed list item as the list item at the beginning of the next logical row when the cumulative width of the list item exceeds the row width of the visible area of ​​the list, and set a placeholder at the currently traversed position.

[0273] It should be noted that the display device 700 of the above interface is embodied in the form of a functional unit. The term "module" here can be implemented in software and / or hardware, without specific limitations.

[0274] For example, a "module" can be a software program, hardware circuit, or a combination of both that implements the above functions. Hardware circuits may include application-specific integrated circuits (ASICs), electronic circuits, processors (e.g., shared processors, proprietary processors, or group processors) and memory for executing one or more software or firmware programs, combined logic circuits, and / or other suitable components that support the described functions.

[0275] Therefore, the units of the various examples described in the embodiments of this application can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0276] Figure 8 This is a schematic diagram of the structure of a vehicle provided in an embodiment of this application.

[0277] For example, vehicle 800 includes: processor 801, memory 802 and executable program code 803.

[0278] For example, vehicle 800 includes one or more processors 801, which can support the display method of the interface in the method embodiment of vehicle 800. Processor 801 can be a general-purpose processor or a special-purpose processor. For example, processor 801 can be a central processing unit (CPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, such as discrete gates, transistor logic devices, or discrete hardware components.

[0279] For example, the processor 801 can be used to control the vehicle 800, execute software programs, and process data from the software programs. The vehicle 800 may also include a communication unit for receiving and transmitting signals.

[0280] For example, the vehicle 800 may include one or more memories 802 storing executable program code 803. The executable program code 803 can be run by the processor 801 to generate instructions, causing the processor 801 to execute the interface display method described in the above method embodiments according to the instructions. For example, the processor 801 executes the following according to the instructions: in response to a target scrolling instruction, determining the anchor list item and the target scrolling row number in the list visible area; displaying at least one list item in the target list in the list visible area, the anchor list item being used to indicate the reference scrolling position corresponding to the target scrolling instruction; traversing the list items adjacent to the anchor list item starting from the anchor list item to obtain the cumulative width of the list items; obtaining a row count value based on the cumulative width of the list items and the row width of the list visible area, and determining the currently traversed list item as the target list item when the row count value reaches the target scrolling row number; controlling the target list scrolling based on the target list item, and displaying the scrolled target list in the list visible area.

[0281] Optionally, the memory 802 may also store data. Optionally, the processor 801 may also read the data stored in the memory 802, which may be stored at the same memory address as the executable program code 803, or the data may be stored at a different memory address than the executable program code 803.

[0282] For example, the processor 801 and memory 802 can be configured separately or integrated together, for example, integrated on the system-on-chip (SOC) of the terminal device.

[0283] For example, the memory 802 can be used to store related programs of the interface display method provided in the embodiments of this application, and the processor 801 can be used to call the executable program code 803 stored in the memory 802 when controlling the vehicle to execute the interface display method of the embodiments of this application.

[0284] This application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the interface display method of any of the foregoing embodiments.

[0285] The computer-readable storage medium may include, but is not limited to, any type of disk, including floppy disks, optical disks, Digital Video Discs (DVDs), Compact Disc Read-Only Memory (CD-ROMs), microdrives, and magneto-optical disks, read-only memory (ROMs), random access memory (RAMs), erasable programmable read-only memory (EPROMs), electrically erasable programmable read-only memory (EEPROMs), dynamic random access memory (DRAMs), video random access memory (VRAMs), flash memory devices, magnetic cards or optical cards, nanosystems (including molecular memory ICs), or any type of medium or device suitable for storing instructions and / or data.

[0286] This application also provides a computer program product that, when run on a computer, causes the computer to perform the aforementioned steps to implement the interface display method in the above embodiments.

[0287] In addition, the electronic device provided in the embodiments of this application may specifically be a chip, component or module. The electronic device may include a connected processor and a memory. The memory is used to store instructions. When the electronic device is running, the processor may call and execute the instructions to make the chip execute the interface display method in the above embodiments.

[0288] The vehicle, computer-readable storage medium, computer program product, or chip provided in this application are all used to execute the corresponding interface display method provided above. Therefore, the beneficial effects that can be achieved can be referred to the beneficial effects of the corresponding interface display method provided above, and will not be repeated here.

[0289] Through the above description of the embodiments, those skilled in the art will understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.

[0290] In the embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.

[0291] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method for displaying an interface, characterized in that, The method includes: In response to a target scroll command, an anchor list item and a target scroll row number are determined in the list view area, wherein at least one list item in the target list is displayed in the list view area, and the anchor list item is used to indicate the reference scroll position corresponding to the target scroll command; Starting from the anchor list item, traverse the list items adjacent to the anchor list item to obtain the cumulative width of the list items; A row count value is obtained based on the cumulative width of the list item and the row width of the visible area of ​​the list, and when the row count value reaches the target number of scroll rows, the currently traversed list item is determined as the target list item; The target list is scrolled based on the target list items, and the scrolled target list is displayed in the visible area of ​​the list.

2. The method according to claim 1, characterized in that, The process of obtaining the row count value based on the cumulative width of the list items and the row width of the visible area of ​​the list includes: When the cumulative width of the list item reaches the row width of the visible area of ​​the list, update the row count value and clear the cumulative width.

3. The method according to claim 1, characterized in that, The method further includes: Get the height of each traversed logical row, where the height of the logical row is the maximum height of the list items within the logical row; The cumulative height is obtained by summing the heights of each logical row that has been traversed. The step of obtaining a row count value based on the cumulative width of the list item and the row width of the visible area of ​​the list, and determining the currently traversed list item as the target list item when the row count value reaches the target number of scroll rows, includes: When the row count reaches the target number of scrolling rows and the cumulative height does not exceed the height of the visible area of ​​the list, the currently traversed list item is determined as the target list item.

4. The method according to claim 1, characterized in that, The method further includes: Based on the target scrolling command, the target scrolling direction is determined, and the target scrolling direction includes scrolling upwards and scrolling downwards; The step of traversing the list items adjacent to the anchor list item as the starting position to obtain the cumulative width of the list items includes: Starting from the anchor point list item, traverse the list items adjacent to the anchor point list item along the target scrolling direction to obtain the cumulative width of the list items.

5. The method according to claim 1, characterized in that, The method further includes: Determine the visibility state of the anchor list item, wherein the visibility state is used to indicate whether the content in the anchor list item is fully displayed within the visible area of ​​the list; If the content of the anchor list item is not fully displayed within the visible area of ​​the list when the visibility state indicates that the anchor list item is not fully displayed, the anchor list item is updated based on the target scrolling direction corresponding to the target scrolling instruction.

6. The method according to claim 5, characterized in that, The step of updating the anchor point list item based on the target scroll direction corresponding to the target scroll instruction includes: When the target scrolling direction is downward, the anchor list item is updated to the list item located at the end of the first logical row, where the first logical row is the adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction to the target scrolling direction; When the target scrolling direction is upward, the anchor list item is updated to the list item at the beginning of the second logical row, where the second logical row is the adjacent complete logical row of the logical row to which the anchor list item belongs in the opposite direction to the target scrolling direction.

7. The method according to claim 5, characterized in that, The method further includes: Obtain the upper and lower boundary positions of the anchor list items, as well as the upper and lower boundary positions of the visible area of ​​the list; Determining the visibility state of the anchor list item includes: When the upper and lower boundaries of the anchor list item are both between the upper and lower boundaries of the list's visible area, the visibility state indicates that the content of the anchor list item is fully displayed within the list's visible area. If at least one of the upper and lower boundary positions of the anchor list item is not between the upper and lower boundary positions of the list's visible area, the visibility state is determined to indicate that the content of the anchor list item is not fully displayed within the list's visible area.

8. The method according to claim 5, characterized in that, The method further includes: Obtain the area of ​​the overlapping region between the anchor point list item and the visible area of ​​the list; Determining the visibility state of the anchor list item includes: The visibility state of the anchor list item is determined based on the target ratio of the area of ​​the overlapping region to the area of ​​the anchor list item.

9. The method according to claim 8, characterized in that, Determining the visibility state of the anchor list item based on a target ratio of the area of ​​the overlapping region to the area of ​​the anchor list item includes: When the target ratio is greater than or equal to the preset ratio, the visibility state is determined to indicate that the content of the anchor list item is fully displayed in the visible area of ​​the list; When the target ratio is less than the preset ratio, the visibility state indicates that the content of the anchor list item is not fully displayed in the visible area of ​​the list.

10. The method according to claim 1, characterized in that, The method further includes: Obtain the height of the visible area of ​​the list and the height of each logical row in the target list; The target ratio is obtained based on the height of the visible area of ​​the list and the height of each logical row in the target list; The target ratio is rounded down to obtain the target number of scroll rows.

11. The method according to any one of claims 2 to 10, characterized in that, The method further includes: When the cumulative width of the list items exceeds the row width of the visible area of ​​the list, the currently traversed list item is determined as the list item at the beginning of the next logical row, and a placeholder is set at the currently traversed position.

12. A vehicle, characterized in that, The vehicles include: Memory, used to store executable program code; A processor for calling and running the executable program code from the memory, causing the vehicle to perform the method as described in any one of claims 1 to 11.