(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-25
(45)【発行日】2024-04-02
(54)【発明の名称】ページ描画制御方法、装置およびデバイス
(51)【国際特許分類】
G09G 5/00 20060101AFI20240326BHJP
G06F 3/14 20060101ALI20240326BHJP
【FI】
G09G5/00 530A
G06F3/14 310C
G09G5/00 550A
(21)【出願番号】P 2021576521
(86)(22)【出願日】2020-06-24
(86)【国際出願番号】 CN2020098250
(87)【国際公開番号】W WO2020259623
(87)【国際公開日】2020-12-30
【審査請求日】2022-01-24
(31)【優先権主張番号】201910569433.1
(32)【優先日】2019-06-27
(33)【優先権主張国・地域又は機関】CN
【前置審査】
(73)【特許権者】
【識別番号】504161984
【氏名又は名称】ホアウェイ・テクノロジーズ・カンパニー・リミテッド
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】タン、ウェイ
(72)【発明者】
【氏名】ユ、タンキ
(72)【発明者】
【氏名】ジ、キュウチャン
(72)【発明者】
【氏名】リ、ユ
【審査官】武田 悟
(56)【参考文献】
【文献】中国特許出願公開第101216762(CN,A)
【文献】特開2000-200180(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G09G 5/00 - 5/42
G06F 3/14
(57)【特許請求の範囲】
【請求項1】
ページ描画制御方法であって、
第1ページ用の描画コマンドを取得する段階であって、前記描画コマンドは前記第1ページを描画するよう命令するのに使用され、前記第1ページは第1コントロールを含み、前記第1コントロールは少なくとも1つの子コントロールを含む、段階と、
前記第1コントロールに対応する画像が格納されていない、もしくは、前記第1コントロールのコンテンツの変化により前記第1コントロールあるいは前記第1コントロールにおける前記少なくとも1つの子コントロールが更新されていると決定されるならば、前記第1コントロールと前記第1コントロールにおけるそれぞれの子コントロールとを別々に描画することにより前記第1コントロールに対応する前記画像を生成し、且つ、前記第1コントロールを描画する段階、または、
生成済みの前記第1コントロールに対応する
前記画像が格納され、且つ、前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが
更新されていないと決定されるならば、
前記第1コントロールと前記第1コントロールにおけるそれぞれの子コントロールとを別々に描画することなく前記第1コントロールに対応する
格納された前記画像
を使用することにより前記第1コントロールを描画する段階
と、
を備え、
前記第1コントロールと前記第1コントロールにおけるそれぞれの子コントロールとを別々に描画することにより前記第1コントロールに対応する前記画像を生成し、且つ、前記第1コントロールを描画する段階は、同じピクセルに繰り返しレンダリングする段階を含む方法。
【請求項2】
前記第1コントロールに対応する
格納された前記画像
を使用することにより前記第1コントロールを描画する段階は、
前記画像に対応する画像描画コマンドを生成する段階と、
前記第1コントロールの表示リストにおける描画コマンド
の組を
1つの前記画像描画コマンドに置換する段階であって、前記表示リストは、前記第1コントロール用の描画コマンド、および、前記第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含む、段階と、
前記第1コントロールの置換された表示リストに基づいて前記第1コントロールを描画する段階と
を有する、請求項1に記載の方法。
【請求項3】
前記第1コントロールに対応する前記画像を生成する段階は、
前記第1コントロールの属性情報を取得する段階であって、前記属性情報は、前記第1コントロールのサイズ、前記第1コントロールにおけるそれぞれの子コントロールのサイズ、および、前記第1コントロールにおけるそれぞれの子コントロールの位置を含む、段階と、
前記属性情報および事前設定された描画機能に基づいて、前記第1コントロールに対応する前記画像を生成する段階と
を有する、請求項1または2に記載の方法。
【請求項4】
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールを描画する段階は、
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールに対応する前記生成された画像
を使用することにより前記第1コントロールを描画する段階、
を有する、請求項1から3の何れか一項に記載の方法。
【請求項5】
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールを描画する段階は、
前記第1コントロールに対応する前記画像を生成する段階と、
前記第1コントロールの表示リストを取得する段階であって、前記表示リストは、前記第1コントロール用の描画コマンド、および、前記第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含む、段階と、
前記表示リストに基づいて前記第1コントロールを描画する段階と
を有する、請求項1から3の何れか一項に記載の方法。
【請求項6】
前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが
更新されていないと決定する段階は、
前記第1コントロールの状態が第1状態であるならば、前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが
更新されていないと決定する段階
を有し、
前記第1コントロールまたは前記第1コントロールにおける前記少なくとも1つの子コントロールが
更新されていると決定する段階は、
前記第1コントロールの前記状態が第2状態であるならば、前記第1コントロールまたは前記第1コントロールにおける前記少なくとも1つの子コントロールは
更新されていると決定する段階を有
し、
前記方法は更に、
前記第1コントロールまたは前記第1コントロールにおける前記少なくとも1つの子コントロールが更新されていることが検出された後に、前記第1コントロールの前記状態を前記第2状態に設定する段階を備え、
前記第1コントロールに対応する前記画像を生成する段階の後に、前記方法は更に、
前記第1コントロールの前記状態を前記第1状態に設定する段階を備える、
請求項1から5の何れか一項に記載の方法。
【請求項7】
前記第1コントロールは閲覧グループコントロールであり、前記第1コントロールにおける前記子コントロールは閲覧コントロールである、
請求項1から
6の何れか一項に記載の方法。
【請求項8】
メモリおよびプロセッサを備える電子デバイスであって、
前記プロセッサは、前記メモリにおけるプログラム命令を実行し、その結果、前記電子デバイスは、
第1ページ用の描画コマンドを取得する段階であって、前記描画コマンドは前記第1ページを描画するよう命令するのに使用され、前記第1ページは第1コントロールを含み、前記第1コントロールは少なくとも1つの子コントロールを含む、段階と、
前記第1コントロールに対応する画像が格納されていない、もしくは、前記第1コントロールのコンテンツの変化により前記第1コントロールあるいは前記第1コントロールにおける前記少なくとも1つの子コントロールが更新されていると決定されるならば、前記第1コントロールと前記第1コントロールにおけるそれぞれの子コントロールとを別々に描画することにより前記第1コントロールに対応する前記画像を生成し、且つ、前記第1コントロールを描画する段階、または、
生成済みの前記第1コントロールに対応する
前記画像が格納され、且つ、前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが
更新されていないと決定されるならば、
前記第1コントロールと前記第1コントロールにおけるそれぞれの子コントロールとを別々に描画することなく前記第1コントロールに対応する
格納された前記画像
を使用することにより前記第1コントロールを描画する段階
と、
を実行することを可能にされ
、
前記第1コントロールと前記第1コントロールにおけるそれぞれの子コントロールとを別々に描画することにより前記第1コントロールに対応する前記画像を生成し、且つ、前記第1コントロールを描画する段階は、同じピクセルに繰り返しレンダリングする段階を含む、電子デバイス。
【請求項9】
前記第1コントロールに対応する前記画像
を使用することにより前記第1コントロールを描画する段階は、
前記画像に対応する画像描画コマンドを生成する段階と、
前記第1コントロールの表示リストにおける描画コマンド
の組を
1つの前記画像描画コマンドに置換する段階であって、前記表示リストは、前記第1コントロール用の描画コマンド、および、前記第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含む、段階と、
前記第1コントロールの置換された表示リストに基づいて前記第1コントロールを描画する段階と
を有する、請求項
8に記載の電子デバイス。
【請求項10】
前記第1コントロールに対応する前記画像を生成する段階は、
前記第1コントロールの属性情報を取得する段階であって、前記属性情報は、前記第1コントロールのサイズ、前記第1コントロールにおけるそれぞれの子コントロールのサイズ、および、前記第1コントロールにおけるそれぞれの子コントロールの位置を含む、段階と、
前記属性情報および事前設定された描画機能に基づいて、前記第1コントロールに対応する前記画像を生成する段階と
を有する、請求項
8または
9に記載の電子デバイス。
【請求項11】
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールを描画する段階は、
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールに対応する前記生成された画像
を使用することにより前記第1コントロールを描画する段階、
を有する、請求項
8から
10の何れか一項に記載の電子デバイス。
【請求項12】
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールを描画する段階は、
前記第1コントロールに対応する前記画像を生成する段階と、
前記第1コントロールの表示リストを取得する段階であって、前記表示リストは、前記第1コントロール用の描画コマンド、および、前記第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含む、段階と、
前記表示リストに基づいて前記第1コントロールを描画する段階と
を有する、請求項
8から
10の何れか一項に記載の電子デバイス。
【請求項13】
前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが
更新されていないと決定する段階は、
前記第1コントロールの状態が第1状態であるならば、前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが
更新されていないと決定する段階
、または、
前記第1コントロールの状態が第2状態であるならば、前記第1コントロールまたは前記第1コントロールにおける前記少なくとも1つの子コントロールが
更新されていると決定する段階、
を有
し、
前記プロセッサは更に、
前記第1コントロールまたは前記第1コントロールにおける前記子コントロールが更新されていることを検出した後に、前記第1コントロールの状態を第2状態に設定し、且つ、
前記第1コントロールに対応する前記画像を生成した後に、前記第1コントロールの前記状態を前記第1状態に設定するように構成される、請求項
8から
12の何れか一項に記載の電子デバイス。
【請求項14】
前記第1コントロールは閲覧グループコントロールであり、前記第1コントロールにおける前記子コントロールは閲覧コントロールである、
請求項
8から
13の何れか一項に記載の電子デバイス。
【請求項15】
コンピュータプログラムであって、
コンピュータまたはプロセッサによって実行された場合に、前記コンピュータまたは前記プロセッサに請求項1から
7の何れか一項に記載の方法を実装させる、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2019年6月27日に中国国家知識財産権局へ出願された、「ページ描画制御方法、装置およびデバイス」と題する中国特許出願第201910569433.1の優先権を主張し、その全体が参照により本明細書に組み込まれる。
【0002】
本出願は、コンピュータ技術の分野に関連し、より具体的には、ページ描画制御方法、装置およびデバイスに関連する。
【背景技術】
【0003】
Android(登録商標)システムにおいて、電子デバイスによって表示されるページは通常、複数のコントロールを含む。複数のコントロールは別々に描画され得、その結果、電子デバイスはそのページを表示できる。
【0004】
ページ上のコントロールは、閲覧(view)コントロールおよび閲覧グループ(viewgroup)コントロールのうちの少なくとも1つを含み、閲覧グループコントロールは、少なくとも1つの子コントロール(例えば閲覧コントロール)を含む。閲覧グループコントロールを描画する場合、電子デバイスは、閲覧グループコントロールと、当該閲覧グループコントロールにおけるそれぞれの子コントロールとを別々に描画する。電子デバイスによって表示される任意のページについて、当該ページ上のコンテンツが変化する(例えば、ユーザが、当該ページ上のコンテンツを変更するべく当該ページ上でフリック操作を実行する)ならば、電子デバイスは、当該ページを周期的に描画し、例えば、16ミリ秒毎に1回、当該ページを描画する。閲覧グループコントロールを描画する場合、電子デバイスは、閲覧グループコントロールと、閲覧グループコントロールにおけるそれぞれの子コントロールとを別々に描画することを必要とする。従って、描画される比較的大量のコンテンツが伴われる。これは、比較的低いページ描画効率に繋がる。
【発明の概要】
【0005】
本出願は、ページ描画効率を改善するべく、ページ描画制御方法、装置およびデバイスを提供する。
【0006】
第1態様によれば、本出願の一実施形態は、第1ページを描画するよう命令するのに使用される描画命令を取得する段階であって、第1ページは第1コントロールを含み、第1コントロールは少なくとも1つの子コントロールを含む、段階と、第1コントロールに対応する画像が存在し、且つ、第1コントロールおよび第1コントロールにおける子コントロールが更新されていないと決定されるならば、第1コントロールに対応する画像に基づいて第1コントロールを描画する段階、または、第1コントロールに対応する画像が存在しない、もしくは、第1コントロールあるいは第1コントロールにおける子コントロールが更新されていると決定されるならば、第1コントロールに対応する画像を生成し、且つ、第1コントロールを描画する段階と、を備えるページ描画制御方法を提供する。
【0007】
前述の処理において、ページ描画処理では、ページ上の閲覧グループコントロール(第1コントロール)に関し、閲覧グループコントロールの画像が最初に生成され且つ格納されてもよい。当該画像は、閲覧グループコントロールに対応する画像、および、閲覧グループコントロールにおけるそれぞれの子コントロールに対応する画像を含む。このように、ページ描画処理において、閲覧グループコントロールにおけるコンテンツが変化しない、且つ、閲覧グループコントロールの画像が存在するならば、描画効率を改善するべく、閲覧グループコントロールが当該画像に基づいて描画され、ページ上の描画されるコンテンツを減らしてもよい。
【0008】
考え得る実装形態において、第1コントロールは、以下の実行可能な実装方法で、第1コントロールに対応する画像に基づいて描画されてもよく、当該方法は、当該画像に対応する画像描画コマンドを生成する段階と、第1コントロールの表示リストにおける描画コマンドを画像描画コマンドに更新する段階と、第1コントロールの更新された表示リストに基づいて第1コントロールを描画する段階とを備える。
【0009】
前述の処理において、更新された表示リストに含まれるコマンドは、画像描画コマンドであり、画像描画コマンドに対応し且つレンダリングされることを必要とするピクセルの数は、第1コントロールに対応する画像が位置する領域におけるピクセルの数である。第1コントロールの更新予定の表示リストにおける描画コマンドに対応し且つレンダリングされることを必要とするピクセルの数は、第1コントロールに対応する画像が位置する領域におけるピクセルの数よりも多い。従って、第1コントロールが第1コントロールの更新された表示リストに基づいて描画される場合、描画効率を改善するべく、描画されるピクセルの数を低減することができる。
【0010】
考え得る実装形態において、第1コントロールに対応する画像は、以下の実行可能な実装方法で生成されてもよく、当該方法は、第1コントロールの属性情報を取得する段階であって、属性情報は、第1コントロールのサイズ、第1コントロールにおけるそれぞれの子コントロールのサイズ、および、第1コントロールにおけるそれぞれの子コントロールの位置を含む、段階と、属性情報および事前設定された描画機能に基づいて、第1コントロールに対応する画像を取得する段階と、を備える。
【0011】
前述の処理において、第1コントロールの属性情報は、第1コントロールを正確に説明してもよい。従って、第1コントロールに対応する画像は、第1コントロールの属性情報および事前設定された描画機能に基づいて正確に描画されてもよい。
【0012】
考え得る実装形態において、第1コントロールに対応する画像が生成されてもよく、第1コントロールは、以下の実行可能な実装方法で描画されてもよく、当該方法は、第1コントロールに対応する画像を生成する段階と、第1コントロールに対応する当該生成された画像に基づいて第1コントロールを描画する段階と、を備える。
【0013】
前述の処理において、第1コントロールに対応する画像が存在しない、または、第1コントロールもしくは第1コントロールにおける子コントロールが更新されていると決定される場合、第1コントロールに対応する画像が最初に生成され、第1コントロールが当該画像に基づいて描画される。このように、第1コントロールは、第1コントロールに対応する画像に基づいて迅速に描画されることができる。
【0014】
考え得る実装形態において、第1コントロールに対応する画像が生成されてもよく、第1コントロールは、以下の実行可能な実装方法で描画されてもよく、当該方法は、第1コントロールに対応する画像を生成する段階と、第1コントロールの表示リストを取得する段階であって、表示リストは、第1コントロール用の描画コマンド、および、第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含む、段階と、表示リストに基づいて第1コントロールを描画する段階と、を備える。
【0015】
前述の処理において、第1コントロールに対応する画像が存在しない、または、第1コントロールもしくは第1コントロールにおける子コントロールが更新されていると決定される場合、第1コントロールに対応する画像が生成され、且つ、第1コントロールが既存の手順に従って描画される。このように、画像を生成する処理、および、既存の手順に従って第1コントロールを描画する処理は、同時に実行されてもよい。このように、生成された画像は、次回、第1コントロールを描画する処理に適用されてもよい。加えて、前述の2つの処理は同時に実行され、その結果、画像を生成し且つ第1コントロールを描画する効率を改善することができる。
【0016】
考え得る実装形態において、第1コントロールの状態が第1状態であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていないと決定され、または、第1コントロールの状態が第2状態であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていると決定される。
【0017】
前述の処理において、第1コントロールまたは第1コントロールにおける子コントロールが更新されているかどうかは、第1コントロールの状態に基づいて簡単且つ迅速に決定されてもよい。
【0018】
考え得る実装形態において、第1コントロールまたは第1コントロールにおける子コントロールが更新されていることを検出された後、第1コントロールの状態は第2状態に設定される。第1コントロールに対応する画像が生成された後、第1コントロールの状態は第1状態に設定される。
【0019】
前述の処理において、第1コントロールの状態は、それに対応して、対応する状況下で設定され、その結果、第1コントロールまたは第1コントロールにおける子コントロールが更新されているかどうかは、第1コントロールの状態に基づいて正確に決定されることができる。
【0020】
考え得る実装形態において、第1コントロールは閲覧グループコントロールであり、第1コントロールにおける子コントロールは閲覧コントロールである。
【0021】
第2態様によれば、本出願の一実施形態は、取得モジュールおよび描画モジュールを備えるページ描画制御装置を提供する。
【0022】
取得モジュールは、第1ページ用の描画命令を取得するように構成され、描画命令は、第1ページを描画するよう命令するのに使用され、第1ページは第1コントロールを含み、第1コントロールは少なくとも1つの子コントロールを含む。
【0023】
描画モジュールは、第1コントロールに対応する画像が存在し、且つ、第1コントロールおよび第1コントロールにおける子コントロールが更新されていないと決定されるならば、第1コントロールに対応する画像に基づいて第1コントロールを描画するように構成される。
【0024】
描画モジュールは更に、第1コントロールに対応する画像が存在しない、または、第1コントロールもしくは第1コントロールにおける子コントロールが更新されていると決定されるならば、第1コントロールに対応する画像を生成し、且つ、第1コントロールを描画するように構成される。
【0025】
考え得る実装形態において、描画モジュールは、具体的には、画像に対応する画像描画コマンドを生成し、第1コントロールの表示リストにおける描画コマンドを画像描画コマンドに更新し、且つ、第1コントロールの更新された表示リストに基づいて第1コントロールを描画するように構成される。
【0026】
考え得る実装形態において、描画モジュールは、具体的には、第1コントロールの属性情報を取得し、且つ、属性情報および事前設定された描画機能に基づいて、第1コントロールに対応する画像を取得するように構成され、属性情報は、第1コントロールのサイズ、第1コントロールにおけるそれぞれの子コントロールのサイズ、および、第1コントロールにおけるそれぞれの子コントロールの位置を含む。
【0027】
考え得る実装形態において、描画モジュールは、具体的には、第1コントロールに対応する画像を生成し、且つ、第1コントロールに対応する当該生成された画像に基づいて第1コントロールを描画するように構成される。
【0028】
考え得る実装形態において、描画モジュールは、具体的には、第1コントロールに対応する画像を生成し、第1コントロールの表示リストを取得し、且つ、表示リストに基づいて第1コントロールを描画するように構成され、表示リストは、第1コントロール用の描画コマンドおよび第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含む。
【0029】
考え得る実装形態において、装置は更に決定モジュールを備える。決定モジュールは、第1コントロールの状態が第1状態であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていないと決定し、または、第1コントロールの状態が第2状態であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていると決定するように構成される。
【0030】
考え得る実装形態において、装置は更に設定モジュールを備える。
【0031】
設定モジュールは、第1コントロールまたは第1コントロールにおける子コントロールが更新されていることを検出された後、第1コントロールの状態は第2状態に設定するように構成される。
【0032】
設定モジュールは更に、描画モジュールが第1コントロールに対応する画像を生成した後、第1コントロールの状態を第1状態に設定するように構成される。
【0033】
考え得る実装形態において、第1コントロールは閲覧グループコントロールであり、第1コントロールにおける子コントロールは閲覧コントロールである。
【0034】
第3態様によれば、本出願の一実施形態は、メモリおよびプロセッサを備える電子デバイスを提供する。プロセッサは、メモリにおけるプログラム命令を実行し、その結果、電子デバイスは、以下の複数の段階を実行することを可能にされ、以下の複数の段階は、第1ページ用の描画命令を取得する段階であって、描画命令は第1ページを描画するよう命令するのに使用され、第1ページは第1コントロールを含み、第1コントロールは少なくとも1つの子コントロールを含む、段階と、第1コントロールに対応する画像が存在し、且つ、第1コントロールおよび第1コントロールにおける子コントロールが更新されていないと決定されるならば、第1コントロールに対応する画像に基づいて第1コントロールを描画する段階、または、第1コントロールに対応する画像が存在しない、もしくは、第1コントロールあるいは第1コントロールにおける子コントロールが更新されていると決定されるならば、第1コントロールに対応する画像を生成し、且つ、第1コントロールを描画する段階と、を備える。
【0035】
考え得る実装形態において、プロセッサは、具体的には、画像に対応する画像描画コマンドを生成し、第1コントロールの表示リストにおける描画コマンドを画像描画コマンドに更新し、且つ、第1コントロールの更新された表示リストに基づいて第1コントロールを描画するように構成される。
【0036】
考え得る実装形態において、プロセッサは、具体的には、第1コントロールの属性情報を取得し、且つ、属性情報および事前設定された描画機能に基づいて、第1コントロールに対応する画像を取得するように構成され、属性情報は、第1コントロールのサイズ、第1コントロールにおけるそれぞれの子コントロールのサイズ、および、第1コントロールにおけるそれぞれの子コントロールの位置を含む。
【0037】
考え得る実装形態において、プロセッサは、具体的には、第1コントロールに対応する画像を生成し、且つ、第1コントロールに対応する当該生成された画像に基づいて第1コントロールを描画するように構成される。
【0038】
考え得る実装形態において、プロセッサは、具体的には、第1コントロールに対応する画像を生成し、第1コントロールの表示リストを取得し、且つ、表示リストに基づいて第1コントロールを描画するように構成され、表示リストは、第1コントロール用の描画コマンドおよび第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含む。
【0039】
考え得る実装形態において、プロセッサは、具体的には、第1コントロールの状態が第1状態であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていないと決定し、または、第1コントロールの状態が第2状態であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていると決定するように構成される。
【0040】
考え得る実装形態において、プロセッサは更に、第1コントロールまたは第1コントロールにおける子コントロールが更新されていることを検出した後に、第1コントロールの状態を第2状態に設定し、且つ、第1コントロールの状態を第1状態に設定するように構成される。
【0041】
考え得る実装形態において、第1コントロールは閲覧グループコントロールであり、第1コントロールにおける子コントロールは閲覧コントロールである。
【0042】
第4態様によれば、本出願の一実施形態は記憶媒体を提供する。記憶媒体は、コンピュータプログラムを格納するように構成される。コンピュータまたはプロセッサによって実行された場合に、コンピュータプログラムは、第1態様の何れか1つによるページ描画制御方法を実装するのに使用される。
【0043】
第5態様によれば、本出願の一実施形態はコンピュータプログラム製品を提供する。コンピュータプログラム製品は命令を備え、命令が実行された場合、コンピュータは、第1態様の何れか1つによるページ描画制御方法を実行することを可能にされる。
【0044】
第6態様によれば、本出願の一実施形態は、システムオンチップまたはシステムチップを提供する。システムオンチップまたはシステムチップは、電子デバイスに適用されてもよく、システムオンチップまたはシステムチップは、少なくとも1つの通信インタフェースと、少なくとも1つのプロセッサと、少なくとも1つのメモリとを備える。通信インタフェース、メモリおよびプロセッサは、バスを介して相互接続される。プロセッサはメモリに格納された命令を実行し、その結果、電子デバイスは、本出願の第1態様の何れか1つによるページ描画制御方法を実行することを可能にされる。
【0045】
本出願の実施形態において提供されるページ描画制御方法、装置およびデバイスによれば、ページ描画処理において、ページ上の閲覧グループコントロールに関し、閲覧グループコントロールの画像が最初に生成され且つ格納されてもよい。当該画像は、閲覧グループコントロールに対応する画像、および、閲覧グループコントロールにおけるそれぞれの子コントロールに対応する画像を含む。このように、ページ描画処理において、閲覧グループコントロールにおけるコンテンツが変化しない、且つ、閲覧グループコントロールの画像が存在するならば、描画効率を改善するべく、閲覧グループコントロールが当該画像に基づいて描画され、ページ上の描画されるコンテンツを減らしてもよい。
【図面の簡単な説明】
【0046】
【
図1A】本出願の一実施形態による、ページのアーキテクチャの概略図である。
【0047】
【
図1B】本出願の一実施形態による、コントロールを含むツリー構造の概略図である。
【0048】
【
図2】本出願の一実施形態による、適用シナリオの概略図である。
【0049】
【
図3】本出願の一実施形態による、電子デバイスのシステムアーキテクチャの構造の概略図である。
【0050】
【
図4】本出願の一実施形態による、ページ描画制御方法の概略フローチャートである。
【0051】
【
図5A】本出願の一実施形態による、描画コマンドを含むツリー構造の概略図である。
【
図5B】本出願の一実施形態による、描画コマンドを含むツリー構造の概略図である。
【0052】
【
図6】本出願の一実施形態による、表示リストの概略図である。
【0053】
【
図7】本出願の一実施形態による、コントロール描画処理の概略図である。
【0054】
【
図8】本出願の一実施形態による、コントロール描画処理の概略図である。
【0055】
【
図9A】本出願の一実施形態による、ページの概略図である。
【
図9B】本出願の一実施形態による、ページの概略図である。
【0056】
【
図10】本出願の一実施形態による、コントロールを含む別のツリー構造の概略図である。
【0057】
【
図11】本出願の一実施形態による、表示リストを含む別のツリー構造の概略図である。
【0058】
【
図12】本出願の一実施形態による、コントロールを含む更に別のツリー構造の概略図である。
【0059】
【
図13A】本出願の一実施形態による、表示リストを含む更に別のツリー構造の概略図である。
【
図13B】本出願の一実施形態による、表示リストを含む更に別のツリー構造の概略図である。
【0060】
【
図14】本出願の一実施形態による、別のページ描画制御方法の概略フローチャートである。
【0061】
【
図15】本出願の一実施形態による、ページ描画制御装置の構造の概略図である。
【0062】
【
図16】本出願の一実施形態による、別のページ描画制御装置の構造の概略図である。
【0063】
【
図17】本出願の一実施形態による、電子デバイスの構造の概略図である。
【0064】
【
図18】本出願の一実施形態による、別の電子デバイスの構造の概略図である。
【発明を実施するための形態】
【0065】
理解を容易にする目的で、ページのアーキテクチャが
図1Aを参照して最初に説明される。
【0066】
図1Aは、本出願の一実施形態による、ページのアーキテクチャの概略図である。ページは通常、2つのタイプのコントロール、すなわち、閲覧(view)コントロールおよび閲覧グループ(viewgroup)コントロールを含み得る。閲覧グループコントロールは、少なくとも1つの閲覧コントロールを含む。閲覧グループコントロールは更に、別の閲覧グループコントロールを備え、閲覧グループコントロールに含まれるコントロールは代替的に、閲覧グループコントロールの子コントロールと称されてもよい。例えば、
図1Aを参照されたい。ページは、閲覧コントロール1、閲覧コントロール2およびリストコントロールを含み、リストコントロールは閲覧グループコントロールである。リストコントロールは、閲覧グループコントロール1、閲覧グループコントロール2、閲覧グループコントロール3および閲覧グループコントロール4を含む。閲覧グループコントロール1、閲覧グループコントロール2、閲覧グループコントロール3および閲覧グループコントロール4はそれぞれ、2つの閲覧コントロールを含む。
【0067】
任意選択で、ページ上の複数のコントロールは、ツリー構造で表わされてもよい。例えば、
図1Aに示されるページ上の複数のコントロールを含むツリー構造は、
図1Bに示されてもよい。
図1Bは、本出願の本実施形態による、コントロールを含むツリー構造の概略図である。
図1Bを参照されたい。根ノード(閲覧)はdecorViewコントロールであり、コントロールは閲覧グループコントロールである。
図1Bに示されるツリー構造の概略図は、
図1Aに示されるページ上に含まれる複数のコントロールと、複数のコントロール間の関係とを示す。
【0068】
図1Aは単にページの一例であることが留意されるべきである。もちろん、ページは更に、別のコントロールを含んでもよい。これは、本出願の本実施形態において、具体的には限定されない。
【0069】
図2を参照すると、以下では、本出願の実施形態が適用可能なシナリオを説明する。
【0070】
図2は、本出願の一実施形態による、適用シナリオの概略図である。
図2を参照されたい。ページ201およびページ202が含まれている。
【0071】
ページ201を参照されたい。電子デバイスは、「連絡先」において、いくつかの連絡先情報を表示している。ユーザは、スクリーンをフリックアップしてもよく、その結果、電子デバイスは他の連絡先情報を表示する。
【0072】
ページ202を参照されたい。ユーザがスクリーンをフリックアップした後、電子デバイスは、表示された連絡先情報を更新する。ページ201と比較すると、電子デバイス上のページ202は、連絡先「Zhang Yi」に関する情報を表示しないが、連絡先「Zhang Wu」に関する情報は表示しており、且つ、連絡先「Zhang Er」、「Zhang San」および「Zhang Si」に関する情報はそのまま残っている。
【0073】
ユーザがスクリーンをフリックする処理において、電子デバイスは周期的に、表示されたページを描画する。例えば、表示されたページは、16ミリ秒毎に1回、描画されてもよく、その結果、ユーザがスクリーンをフリックする処理において、電子デバイスによって表示されるページは円滑にフリックされることができる。言い換えれば、本出願に示される方法は、ユーザがスクリーンをフリックする処理においてページが描画されるシナリオに適用可能である。
【0074】
もちろん、本出願に示される方法は更に、別のシナリオに適用可能である。例えば、電子デバイスがページを表示する処理において、ページ上のコンテンツは自動的に更新されてもよい。ページ上のコンテンツが更新された後、電子デバイスはまた、表示されたページを再描画する。例えば、「連絡先」における連絡先プロファイル写真は、周期的に更新されてもよい。連絡先プロファイル写真が更新されることを検出した後、電子デバイスは、表示されたページを再描画してもよい。
【0075】
以下では、
図3を参照し、本出願における電子デバイスのシステムアーキテクチャを説明する。
【0076】
図3は、本出願の一実施形態による、電子デバイスのシステムアーキテクチャの構造の概略図である。
図3を参照されたい。電子デバイスのシステムアーキテクチャは、アプリケーション層、フレームワーク層およびハードウェア層を備える。
【0077】
アプリケーション層は、複数のアプリケーションを有する。例えば、アプリケーション層は、通信アプリケーション、ブラウザアプリケーション等を有してもよい。
【0078】
フレームワーク層は、ユーザインタフェース(user interface、UI)フレームワークおよびレンダリングフレームワークを有する。UIフレームワークは、測定モジュール、レイアウトモジュール、描画モジュールおよび最適化モジュールを含む。最適化モジュールは、事前描画モジュール、画像再使用モジュール、レンダリングノード置換モジュールおよびコンテンツ検出モジュールを含む。測定モジュールは、コントロールのサイズを取得するべく、コントロールを測定するように構成される。レイアウトモジュールは、コントロールの位置を取得するべく、コントロールをレイアウトするように構成される。描画モジュールは、コントロールの表示リストを取得するように構成され、表示リストは、コントロール用の描画コマンドを含む。事前描画モジュールは、事前に、コントロールに対応する画像を描画するように構成される。コンテンツ検出モジュールは、コントロールにおけるコンテンツが変化するかどうかを検出するように構成される。画像再使用モジュールは、事前に描画される画像であってコントロールに対応する画像を使用することにより、コントロールを描画するように構成される。レンダリングノード置換モジュールは、コントロールの表示リストにおける描画命令を、コントロールに対応する画像用の画像描画命令と置換するように構成される。UIフレームワークは、更新された表示リストをレンダリングフレームワークに送信してもよく、レンダリングフレームワークは、コントロールを描画するべく、表示リストにおける描画命令を実行する。
【0079】
ハードウェア層は、ハードウェア構造を有する。例えば、ハードウェア層は、中央処理装置(central processing unit、CPU)、グラフィックス処理ユニット(graphics processing unit、GPU)、記憶ユニットおよび処理回路などのハードウェア構造を有してもよい。
【0080】
図4に示される実施形態において、システムアーキテクチャにおけるモジュールの機能を詳細に説明し、詳細は本明細書において再度説明しないことが留意されるべきである。
【0081】
本出願において、ページ描画処理では、ページ上の閲覧グループコントロールに関し、閲覧グループコントロールの画像が最初に生成され且つ格納されてもよい。当該画像は、閲覧グループコントロールに対応する画像、および、閲覧グループコントロールにおけるそれぞれの子コントロールに対応する画像を含む。このように、ページ描画処理において、閲覧グループコントロールにおけるコンテンツが変化しない、且つ、閲覧グループコントロールの画像が存在するならば、描画効率を改善するべく、閲覧グループコントロールが当該画像に基づいて描画され、ページ上の描画されるコンテンツを減らしてもよい。
【0082】
以下では、具体的な実施形態を参照し、本出願における技術的解決手段を詳細に説明する。以下のいくつかの具体的な実施形態は、互いに独立したものであってもよく、または、互いに組み合わされてもよく、異なる実施形態において、同じまたは類似するコンテンツは繰り返し説明しないことが留意されるべきである。
【0083】
図4は、本出願の一実施形態による、ページ描画制御方法の概略フローチャートである。
図4を参照されたい。方法は、以下の段階を備えてもよい。
【0084】
S401:第1ページ用の描画命令を取得する段階であり、描画命令は、第1ページを描画するよう命令するのに使用される。
【0085】
本出願の本実施形態は、電子デバイスによって、または、電子デバイスの内/外側に配置されるページ描画装置によって実行されてもよい。任意選択で、電子デバイスは、携帯電話、コンピュータ、ウェアラブルデバイス、仮想現実(VR)デバイス、または拡張現実(AR)デバイスなどのデバイスであってもよい。ページ描画装置は、ソフトウェアを使用することによって実装されてもよく、または、ソフトウェアとハードウェアとの組み合わせを使用することによって実装されてもよい。
【0086】
任意選択で、描画命令は、垂直同期(Vsync)信号であってもよい。
【0087】
任意選択で、第1ページ用の描画命令は、以下の実行可能な実装方法で取得されてもよい。
【0088】
実行可能な実装において、電子デバイスが第1ページを表示する処理では、ユーザが、例えばフリック操作またはタップ操作といった操作を第1ページ上に入力する。ユーザによる操作入力を検出した後、電子デバイスは、第1ページ用の描画命令を生成する。任意選択で、ユーザが第1ページ上に操作を入力する処理において(すなわち、電子デバイスが、ユーザによる操作入力を検出する処理において)、電子デバイスは、周期的に描画命令を生成し、例えば、16ミリ秒毎に1回、描画命令を生成する。
【0089】
この実行可能な実装において、ユーザは、第1ページを操作し、その結果、電子デバイスは、第1ページ用の描画命令を取得する。
【0090】
別の実行可能な実装において、電子デバイスが第1ページを表示する処理では、電子デバイスが、第1ページ上の各コントロールにおけるコンテンツを監視してもよい。電子デバイスが第1ページ上のコントロールにおけるコンテンツが変化することを検出した場合、電子デバイスは、第1ページ用の描画命令を取得する。例えば、
図1Aを参照されたい。電子デバイスが
図1Aに示されるページを表示する処理において、連絡先「Zhang Yi」の画像が変化する場合、電子デバイスは、第1ページ用の描画命令を取得する。
【0091】
この実行可能な実装において、第1ページ上のコントロールにおけるコンテンツが変化するので、電子デバイスは、第1ページ用の描画命令を取得する。
【0092】
更に別の実行可能な実装において、第1ページ以外の別のページを表示する場合、電子デバイスは、ユーザによって別のページ上に入力される第1ページ用の表示操作を受信し、その結果、電子デバイスは、第1ページ用の描画命令を生成する。例えば、ユーザは、別のページ上にあって且つ第1ページへ進むのに使用されるコントロール上にタップ操作を入力してもよく、その結果、電子デバイスは第1ページ用の描画命令を生成する。例えば、別のページが表示される場合、ユーザは、事前設定された分割スクリーンジェスチャを入力してもよく、その結果、第1ページが分割スクリーンモードで現在の表示インタフェース上に表示される。電子デバイスは、事前設定された分割スクリーンジェスチャに応答して、第1ページ用の描画命令を生成する。
【0093】
この実行可能な実装において、ユーザは、第1ページ以外の別のページを操作し、その結果、電子デバイスは第1ページ用の描画命令を取得する。
【0094】
S402:第1ページ上の各コントロールの属性情報を取得するべく、第1ページ用の描画命令に基づいて第1ページ上のコントロールを測定およびレイアウトする段階。
【0095】
任意選択で、コントロールが閲覧コントロールである場合、閲覧コントロールの属性情報は、閲覧コントロールのサイズおよび位置を含む。コントロールが閲覧グループコントロールである場合、閲覧グループコントロールの属性情報は、閲覧グループコントロールのサイズ、閲覧グループコントロールの位置、閲覧グループコントロールにおけるそれぞれの子コントロールのサイズ、および、閲覧グループコントロールにおけるそれぞれの子コントロールの位置を含む。
【0096】
任意選択で、コントロールのサイズは、コントロールを測定することによって取得されることができる。例えば、コントロールが閲覧コントロールである場合、閲覧コントロールのサイズを取得するべく、閲覧コントロールは、測定機能を使用することによって測定されてもよい。コントロールが閲覧グループコントロールである場合、閲覧グループコントロールのサイズおよび閲覧グループコントロールに含まれるそれぞれの子コントロールのサイズを取得するべく、閲覧グループコントロールおよび閲覧グループコントロールに含まれるそれぞれの子コントロールは、測定機能を使用することによって別々に測定されてもよい。言い換えれば、閲覧グループコントロールが測定された後、閲覧グループコントロールのサイズが取得されてもよく、閲覧グループコントロールにおけるそれぞれの子コントロールのサイズが更に取得されてもよい。任意選択で、コントロールのサイズは、
図3における測定モジュールを使用することによって取得されてもよい。
【0097】
任意選択で、コントロールの位置は、コントロールをレイアウトすることによって取得されることができる。例えば、コントロールが閲覧コントロールである場合、閲覧コントロールの位置を取得するべく、閲覧コントロールは、レイアウト機能を使用することによってレイアウトされてもよい。コントロールが閲覧グループコントロールである場合、閲覧グループコントロールの位置および閲覧グループコントロールに含まれるそれぞれの子コントロールの位置を取得するべく、閲覧グループコントロールおよび閲覧グループコントロールに含まれるそれぞれの子コントロールは、レイアウト機能を使用することによって別々にレイアウトされてもよい。言い換えれば、閲覧グループコントロールがレイアウトされた後、閲覧グループコントロールの位置が取得されてもよく、閲覧グループコントロールにおけるそれぞれの子コントロールの位置が更に取得されてもよい。任意選択で、コントロールの位置は、
図3におけるレイアウトモジュールを使用することによって取得されてもよい。
【0098】
S403:第1ページ上の各コントロールの属性情報に基づいて、第1ページ上の各コントロールの表示リストを取得する段階。
【0099】
コントロールの表示リストは、コントロールに対応する描画命令を含む。
【0100】
コントロールが閲覧コントロールである場合、閲覧コントロールに対応する描画命令は、閲覧コントロール用の描画命令を含む。言い換えれば、閲覧コントロールの表示リストは、1つの描画命令を含む。
【0101】
コントロールが閲覧グループコントロールである場合、閲覧グループコントロールに対応する描画命令は、閲覧グループコントロール用の描画命令、および、閲覧グループコントロールにおけるそれぞれの子コントロール用の描画命令を含む。言い換えれば、閲覧グループコントロールの表示リストは、少なくとも2つの描画命令を含む。
【0102】
第1ページ上の各コントロールの表示リストを取得する処理は同じである。第1ページ上の任意のコントロールについて、コントロールの表示リストは、コントロールの属性情報および描画機能に基づいて取得されてもよい。任意選択で、表示リストにおける描画コマンドは、ツリー構造で表示されてもよい。以下では、
図5Aおよび
図5Bを参照し、ツリー構造における描画コマンドを説明する。
【0103】
図5Aおよび
図5Bは、本出願の一実施形態による、描画コマンドを含むツリー構造の概略図である。
図5Aおよび
図5Bは、コントロールを含むツリー構造と、描画コマンドを有し、且つ、コントロールを含むツリー構造に対応する、ツリー構造とを示す。
図5Aおよび
図5Bを参照されたい。コントロールを含むツリー構造と、描画コマンドを含むツリー構造との間には対応関係が存在する。コントロールおよび表示リストの間の対応関係は、表1に示される。
【表1】
【0104】
任意選択で、第1ページ上の各コントロールの表示リストは、
図3における描画モジュールを使用することによって取得されてもよい。
【0105】
S403の後、各コントロールは別々に描画される。以下では、第1ページ上の任意の第1コントロールの描画処理を説明する。第1コントロールは閲覧グループコントロールであり、第1コントロールは少なくとも1つの子コントロールを含む。
【0106】
S404:第1コントロールに対応する画像が存在するかどうか、および、第1コントロールおよび第1コントロールにおける子コントロールが更新されていないかどうか、を決定する段階。
【0107】
もしそうであれば、S405からS408が実行される。
【0108】
もしそうでなければ、S409およびS410が実行される。
【0109】
任意選択で、コントロールに対応する画像は、以下の実行可能な実装方法で格納されてもよく、当該方法は、コントロールの識別子を取得する段階と、コントロールの識別子およびコントロールに対応する画像を、キーバリュー(key-value、K-V)ペアの形で、ハッシュテーブルに格納する段階と、を備える。コントロールの識別子は、コントロールの位置キーワードであってもよく、コントロールの位置キーワードは、ページ上のコントロールの位置を示すのに使用される。例えば、コントロールの位置キーワードは、リスト閲覧におけるコントロールの順序番号であってもよい。リスト閲覧は、20個のコントロールを含み、20個のコントロールは、リスト閲覧において順次配列されていると仮定する。この場合、リスト閲覧における20個のコントロールの位置キーワードは、それぞれ1、2、3、…、20である。この実行可能な実装において、第1コントロールに対応する画像が存在するかどうかが決定される場合に、第1コントロールの識別子が取得されてもよく、位置キーワードに対応する画像がハッシュテーブルに存在するかどうかは、第1コントロールの識別子に基づいて決定される。もちろん、別の既存の記憶方法が代替的に使用されてもよく、本発明の本実施形態において、特定の記憶実装が限定されることはない。
【0110】
任意選択で、第1コントロールおよび第1コントロールにおける子コントロールが更新されているかどうかは、以下の実行可能な実装方法で決定されてもよく、当該方法は、第1コントロールの状態を取得する段階と、第1コントロールの状態が第1状態であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていないと決定する段階、または、第1コントロールの状態が第2状態であるならば、第1コントロールまたは第1コントロールにおける子コントロールは更新されていると決定する段階と、を備える。任意選択で、最初に、第1コントロールの状態は第1状態であってもよい。第1コントロールまたは第1コントロールにおける子コントロールが更新されていることを検出された場合、第1コントロールの状態は第2状態に設定される。第1コントロールに対応する画像が生成された後、第1コントロールの状態は第1状態に設定される。任意選択で、第1コントロールおよび第1コントロールにおける子コントロールが更新されているかどうかは、事前設定されたフラグが事前設定値であるかどうかを決定することによって決定されてもよい。例えば、事前設定されたフラグは、初期化中に0に設定される。事前設定されたフラグは、第1コントロールまたは第1コントロールにおける任意の子コントロールが更新されているならば1に設定され、事前設定された条件が満たされる場合(例えば、事前設定された時間周期が満了した場合、事前設定されたメッセージが受信された場合、または、事前設定モードが入れられている、すなわち、コントロールおよび子コントロールが変化後に表示された後、事前設定されたフラグが0に復元されると決定された場合)には0に復元される。第1コントロールおよび第1コントロールにおける子コントロールが更新されているかどうかは、事前設定されたフラグが1であるかどうかを検出することによって決定されることができる。事前設定されたフラグが1であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていると決定される。事前設定されたフラグが0であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていないと決定される。任意選択で、第1コントロールおよび第1コントロールにおける子コントロールは更新されているかどうかは、
図3におけるコンテンツ検出モジュールを使用することによって検出されてもよい。
【0111】
S405:第1コントロールに対応する画像を取得する段階。
【0112】
任意選択で、第1コントロールに対応する画像は、第1コントロールの識別子に基づいて、ハッシュテーブルから取得されてもよい。
【0113】
任意選択で、第1コントロールに対応する画像は、
図3における画像再使用モジュールを使用することによって取得されてもよい。
【0114】
S406:第1コントロールに対応する画像用の画像描画コマンドを生成する段階。
【0115】
任意選択で、画像描画コマンドは、描画機能を使用することによって生成されてもよい。
【0116】
S407:第1コントロールの表示リストにおける描画コマンドを画像描画コマンドに更新する段階。
【0117】
任意選択で、第1コントロールの表示リストにおける描画コマンドは、画像描画コマンドと置換されてもよい。具体的には、第1コントロールの表示リストにおける描画コマンドは削除され、且つ、第1コントロールの表示リストに画像描画コマンドが追加される。
【0118】
以下では、
図6を参照し、第1コントロールの更新予定の表示リストおよび更新された表示リストを説明する。
【0119】
図6は、本出願の本実施形態による、表示リストの概略図である。
図6、
図5Aおよび
図5Bを参照されたい。第1コントロールは、
図1Aおよび
図1Bにおける閲覧グループコントロール1であると仮定する。S407が実行される前に、閲覧グループコントロール1の表示リスト、すなわち、表示リスト3は、描画コマンド3、描画コマンド31および描画コマンド32を含む。S407の後、表示リスト3は画像描画コマンド3を含む。
【0120】
任意選択で、第1コントロールの表示リストは、
図3におけるレンダリングノード置換モジュールを使用することによって更新されてもよい。
【0121】
S408:第1コントロールの更新された表示リストに基づいて第1コントロールを描画する段階。
【0122】
任意選択で、第1コントロールを描画するべく、第1コントロールの表示リストにおける描画コマンドが実行されてもよい。第1コントロールの表示リストにおける描画コマンドが画像描画コマンドであるので、第1コントロールに対応する画像に基づいて第1コントロールを描画するべく、画像描画コマンドが実行されてもよい。画像描画コマンドを使用することによって第1コントロールを描画する処理において、レンダリングされたピクセルの数は、第1コントロールに対応する画像が位置する領域におけるピクセルの数である。
【0123】
任意選択で、電子デバイスは、USスレッドおよびレンダリング(render)スレッドを備える。S401からS407を実行する処理は、USスレッドによって実行されてもよい。USスレッドは、S407で取得された表示リストをレンダリングスレッドに送信してもよく、その結果、レンダリングスレッドは段階S408を実行し、すなわち、更新された表示リストに基づいて第1コントロールを描画する。
【0124】
任意選択で、第1コントロールは、
図3におけるレンダリングフレームワークを使用することによって描画されてもよい。
【0125】
以下では、
図7を参照し、第1コントロールの描画処理を説明する。
【0126】
図7は、本出願の一実施形態による、コントロール描画処理の概略図である。
図7を参照されたい。第1コントロールは
図1Aおよび
図1Bにおける閲覧グループコントロール1であり、且つ、閲覧グループコントロール1は閲覧コントロール11および閲覧コントロール12を含むと仮定する。閲覧グループコントロール1が測定され、レイアウトされ、且つ、描画された後、閲覧グループコントロール1の表示リストが取得されてもよく、表示リストは、描画コマンド1、描画コマンド11および描画コマンド12を含む。閲覧グループコントロール1に対応する画像が存在し、且つ、閲覧グループコントロール1および閲覧グループコントロール1における子コントロールが更新されていないと仮定する。この場合、第1コントロールの表示リストは更新されており、更新された表示リストは画像描画コマンド1を含む。表示リストに基づいて描画が実行される場合、閲覧グループコントロール1を取得するべく、画像描画コマンド1に基づいて閲覧グループコントロール1に対応する画像がレンダリングされる。閲覧グループコントロール1を描画する処理において、レンダリングされたピクセルは、閲覧グループコントロール1に対応する画像におけるピクセルを含む。閲覧グループコントロール1に対応する画像におけるピクセルは、閲覧グループコントロール1が位置する矩形ボックスにおけるピクセルに等しく、その結果、レンダリング効率を改善するべく、より少ないピクセルがレンダリングされる。
【0127】
S409:第1コントロールに対応する画像を生成し且つ格納する段階。
【0128】
任意選択で、第1コントロールに対応する画像は、以下の実行可能な実装方法で生成されてもよく、第1コントロールの属性情報が取得されてもよい。属性情報は、第1コントロールのサイズ、第1コントロールにおけるそれぞれの子コントロールのサイズ、および、第1コントロールにおけるそれぞれの子コントロールの位置を含む。第1コントロールに対応する画像は、属性情報および事前設定された描画機能(例えば前述の描画機能)に基づいて取得される。例えば、第1コントロールに対応する画像を取得するべく、第1コントロールは、第1コントロールにおけるそれぞれの子コントロールを使用することによって描画されてもよい。
【0129】
任意選択で、第1コントロールの識別子が取得されてもよく、第1コントロールの識別子および第1コントロールに対応する画像は、K-Vペアの形でハッシュテーブルに格納されてもよい。
【0130】
任意選択で、第1コントロールに対応する画像は、
図3における事前描画モジュールを使用することによって生成されてもよい。
【0131】
S410:第1コントロールの表示リストに基づいて第1コントロールを描画する段階。
【0132】
第1コントロールの表示リストは、第1コントロール用の描画コマンド、および、第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含むので、第1コントロールを取得するべく、第1コントロール用の描画コマンド、および、第1コントロールにおけるそれぞれの子コントロール用の描画コマンドに基づいて描画が順次実行されてもよい。
【0133】
任意選択で、S409を実行する処理はUSスレッドによって実行されてもよい。第1コントロールの表示リストは更新される必要がないので、USスレッドは、S403で取得された表示リストをレンダリングスレッドに送信してもよく、その結果、レンダリングスレッドはS410を実行し、すなわち、S403で取得された表示リストに基づいて第1コントロールを描画する。
【0134】
以下では、
図8を参照し、第1コントロールの描画処理を説明する。
【0135】
図8は、本出願の一実施形態による、コントロール描画処理の概略図である。
図8を参照されたい。第1コントロールは
図1Aおよび
図1Bにおける閲覧グループコントロール1であり、且つ、閲覧グループコントロール1は閲覧コントロール11および閲覧コントロール12を含むと仮定する。閲覧グループコントロール1が測定され、レイアウトされ、且つ、描画された後、閲覧グループコントロール1の表示リストが取得されてもよく、表示リストは、描画コマンド1、描画コマンド11および描画コマンド12を含む。表示リストに基づいて描画が実行される場合、描画コマンド1に基づいて閲覧グループコントロール1に対応する矩形ボックスが最初にレンダリングされる。次に、矩形ボックスにおいて、描画コマンド11に基づき、閲覧コントロール11に対応する画像がレンダリングされ、且つ、矩形ボックスにおいて、描画コマンド12に基づき、閲覧コントロール12におけるテキスト「Zhang Yi」がレンダリングされる。前述したものから、閲覧グループコントロール1を描画する処理において、レンダリングされたピクセルは、矩形ボックスが位置する領域における全てのピクセル、画像が位置する領域における全てのピクセル、および、テキストが位置する領域における全てのピクセル、の和を含むことが学習され得る。画像が位置する領域におけるピクセル、および、テキストが位置する領域におけるピクセルは両方、矩形ボックスが位置する領域におけるピクセルと一致するので、閲覧グループコントロール1を描画する処理において繰り返しレンダリングされたピクセルが存在し(画像が位置する領域、および、テキストが位置する領域における全てのピクセルが繰り返しレンダリングされる)、これは、比較的低いレンダリング効率という結果になる。
【0136】
S409の後、第1コントロールは更に、第1コントロールに対応する画像に基づいて描画されてもよいことが留意されるべきである。第1コントロールに対応する画像に基づいて第1コントロールを描画する処理は、S406からS408を実行する処理と同じであり、詳細は本明細書において再度説明しない。
【0137】
段階S410は代替的に、S409の前に実行されてもよく、または、S410およびS409の両方が同時に実行されてもよいことが留意されるべきである。代替的に、上記で説明したように、S410は実行されないが、S406からS408はS409の後に実行される。
【0138】
図4の実施形態で示される処理段階(S401からS410)は、ページ描画処理に対する特定の制限とはならないことが留意されるべきである。本出願のいくつかの他の実施形態において、ページ描画処理は、
図4の実施形態におけるものより少ない段階または多い段階を備えてもよい。例えば、ページ描画処理は、
図4の実施形態におけるいくつかの段階を備えてもよい。代替的に、
図4の実施形態におけるいくつかの段階は、同じ機能を有する段階と置換されてもよく、または、
図4の実施形態におけるいくつかの段階は、複数の段階へと分割されてもよい。
【0139】
本出願の実施形態において提供されるページ描画方法によれば、ページ描画処理において、ページ上の閲覧グループコントロールに関し、閲覧グループコントロールの画像が最初に生成され且つ格納されてもよい。当該画像は、閲覧グループコントロールに対応する画像、および、閲覧グループコントロールにおけるそれぞれの子コントロールに対応する画像を含む。このように、ページ描画処理において、閲覧グループコントロールにおけるコンテンツが変化しない、且つ、閲覧グループコントロールの画像が存在するならば、描画効率を改善するべく、閲覧グループコントロールが当該画像に基づいて描画され、ページ上の描画されるコンテンツを減らしてもよい。
【0140】
複数の前述の実施形態のうちの任意の1つに基づいて、以下では、
図9Aから
図13Bを参照し、具体例を使用することによってページ描画方法を説明する。
【0141】
図9Aおよび
図9Bは、本出願の一実施形態による、ページの概略図である。
図9Aを参照されたい。ページ901、ページ902およびページ903が含まれる。
【0142】
ページ901を参照されたい。ページ901は、複数のアプリケーションのアイコンを含む。ユーザが連絡先リストを閲覧することを必要とする場合、ユーザは、連絡先リストアイコン上でタップ操作を実行してもよい。連絡先リストアイコン上でタップ操作を検出したことに応答して、電子デバイスは、連絡先ページ用の描画命令を取得する。
【0143】
電子デバイスは、描画命令に従い、表示予定の連絡先ページ上に含まれるコントロールを取得する。表示予定の連絡先ページはリストコントロールを含み、リストコントロールは、4つの連絡先に関する情報に対応する閲覧グループコントロールを含み、且つ、各閲覧グループコントロールは画像コントロールおよびテキストコントロールを含む、と仮定する。言い換えれば、表示予定の連絡先ページ上に含まれ且つ電子デバイスによって取得されるコントロールを含むツリー構造が、
図10に示される。
【0144】
図10は、本出願の一実施形態による、コントロールを含む別のツリー構造の概略図である。
図10を参照されたい。連絡先ページ上の4つの連絡先に関する情報と、コントロールとの間の対応関係は、表2に示される。
【表2】
【0145】
図10に示されるコントロールにおいて、閲覧グループコントロール1、閲覧グループコントロール2、閲覧グループコントロール3および閲覧グループコントロール4の状態は全て、第1状態である。
【0146】
電子デバイスは、連絡先ページ上の各コントロールの表示リストを取得するべく、描画命令に従って、
図10に示されるコントロールを測定し、レイアウトし、且つ、描画する。表示リストは、
図11に示されてもよい。
【0147】
図11は、本出願の一実施形態による、表示リストを含む別のツリー構造の概略図である。
図11を参照されたい。連絡先ページ上の4つの連絡先に関する情報と表示リストとの間の対応関係は、表3に示される。
【表3】
【0148】
電子デバイスは、閲覧グループコントロール1、閲覧グループコントロール2、閲覧グループコントロール3および閲覧グループコントロール4にそれぞれ対応する複数の画像が存在しないと決定する。この場合、電子デバイスは、閲覧グループコントロール1、閲覧グループコントロール2、閲覧グループコントロール3および閲覧グループコントロール4に対応する複数の画像を、別々に生成し且つ格納する。
【0149】
閲覧グループコントロール1、閲覧グループコントロール2、閲覧グループコントロール3および閲覧グループコントロール4にそれぞれ対応する複数の画像が存在しないので、電子デバイスは、
図11に示される表示リストに基づいて、連絡先ページ上の各コントロールをレンダリングする。レンダリング処理は、
図9Bにおいてレンダリング処理1として示されている。
図9Bにおいてレンダリング処理1に示されているレンダリングの後、ページ902が取得される。コントロールを描画する処理は、順次実行されてもよく、または同時に実行されてもよい。
【0150】
ページ902を参照されたい。電子デバイスがページ902上に示される連絡先リストを表示した後、ユーザが別の連絡先に関する情報を閲覧することを必要とするならば、ユーザは、電子デバイス上でフリックアップ操作を入力してもよい。ユーザがフリックアップ操作を入力する処理において、電子デバイスは、連絡先ページ用の描画命令を取得する。
【0151】
電子デバイスは、描画命令に従い、表示予定の連絡先ページ上に含まれるコントロールを取得する。表示予定の連絡先ページはリストコントロールを含み、リストコントロールは、4つの連絡先に関する情報に対応する閲覧グループコントロールを含み、且つ、各閲覧グループコントロールは画像コントロールおよびテキストコントロールを含む、と仮定する。コンテンツ検出モジュールが、連絡先「Zhang Er」に対応する連絡先プロファイル写真が(「Zhang Er」に対応する最後の描画された連絡先プロファイル写真と比較して)変化することを検出すると仮定する。この場合、表示予定の連絡先ページ上に含まれ且つ電子デバイスによって取得されるコントロールを含むツリー構造が、
図12に示される。
【0152】
図12は、本出願の一実施形態による、コントロールを含む更に別のツリー構造の概略図である。
図12を参照されたい。連絡先ページ上の4つの連絡先に関する情報と、コントロールとの間の対応関係は、表4に示される。
【表4】
【0153】
電子デバイスは、連絡先ページ上の各コントロールの表示リストを取得するべく、描画命令に従って、
図12に示されるコントロールを測定し、レイアウトし、且つ、描画する。任意選択で、閲覧グループコントロール3および閲覧グループコントロール4におけるコンテンツが更新されていないので、閲覧グループコントロール3および閲覧グループコントロール4に対応する表示リストは更新されなくてもよい。表示リストは、
図13Aおよび
図13Bに示されてもよい。
【0154】
図13Aおよび
図13Bは、本出願の一実施形態による、表示リストを含む更に別のツリー構造の概略図である。
図13Aおよび
図13Bを参照されたい。更新予定の表示リストおよび更新された表示リストが含まれている。
【0155】
更新予定の表示リストを参照されたい。連絡先ページ上の4つの連絡先に関する情報と表示リストとの間の対応関係は、表5に示される。
【表5】
【0156】
電子デバイスは、閲覧グループコントロール2、閲覧グループコントロール3および閲覧グループコントロール4にそれぞれ対応する複数の画像が存在し、且つ、閲覧グループ3および閲覧グループ4におけるコンテンツが変化しない、と決定する。この場合、電子デバイスは、閲覧グループコントロール3および閲覧グループコントロール4に対応する画像描画命令を生成し、且つ、画像描画命令を使用することによって、対応する表示リストを更新する。
【0157】
更新された表示リストを参照されたい。連絡先ページ上の4つの連絡先に関する情報と表示リストとの間の対応関係は、表6に示される。
【表6】
【0158】
電子デバイスは、
図13Bにおける更新された表示リストに基づいて、連絡先ページ上の各コントロールをレンダリングする。レンダリング処理は、
図9Bにおいてレンダリング処理2として示されている。
図9Bにおいてレンダリング処理2に示されているレンダリングの後、ページ903が取得される。
【0159】
レンダリング処理2を参照されたい。連絡先「Zhang San」および「Zhang Si」に対応するコントロールをレンダリングする処理において、レンダリングされたピクセルおよびシステムリソースを減らし、且つ、レンダリング効率を改善するべく、レンダリングは、対応する画像に基づいて別々に実行され、レンダリングされた対象を減らす。
【0160】
複数の前述の実施形態の任意の1つに基づいて、以下では、
図14を参照し、ページ描画方法を説明する。
【0161】
図14は、本出願の一実施形態による、別のページ描画制御方法の概略フローチャートである。
図14を参照されたい。方法は、以下の段階を備えてもよい。
【0162】
S1401:第1ページ用の描画命令を取得する段階であり、描画命令は、第1ページを描画するよう命令するのに使用され、第1ページは第1コントロールを含み、第1コントロールは少なくとも1つの子コントロールを含む。
【0163】
S1401を実行する処理については、S401を実行する処理を参照されたいことが留意されるべきである。詳細は、本明細書において再度説明しない。
【0164】
S1402:第1コントロールに対応する画像が存在し、且つ、第1コントロールおよび第1コントロールにおける子コントロールが更新されていないと決定されるならば、第1コントロールに対応する画像に基づいて第1コントロールを描画する段階。
【0165】
第1コントロールに対応する画像が存在するかどうか、および、第1コントロールおよび第1コントロールにおける子コントロールが更新されていないかどうかは、S404に示される方法に従って決定されてもよいことが留意されるべきである。詳細は、本明細書において再度説明しない。
【0166】
第1コントロールに対応する画像に基づいて第1コントロールを描画する処理については、S405からS408を参照されたいことが留意されるべきである。詳細は、本明細書において再度説明しない。
【0167】
S1403:第1コントロールに対応する画像が存在しない、または、第1コントロールもしくは第1コントロールにおける子コントロールが更新されていると決定されるならば、第1コントロールに対応する画像を生成する段階。
【0168】
任意選択で、第1コントロールに対応する画像が生成された後、第1コントロールに対応する画像は格納されてもよい。
【0169】
任意選択で、S1403の後、第1コントロールは、第1コントロールに対応する画像に基づいて描画されてもよく、または、第1コントロールは、
図8に示されるレンダリング処理に従って描画されてもよい。
【0170】
図14に示される実施形態において、ページ描画処理では、ページ上の閲覧グループコントロールに関し、閲覧グループコントロールの画像が最初に生成され且つ格納されてもよい。当該画像は、閲覧グループコントロールに対応する画像、および、閲覧グループコントロールにおけるそれぞれの子コントロールに対応する画像を含む。このように、ページ描画処理において、閲覧グループコントロールにおけるコンテンツが変化しない、且つ、閲覧グループコントロールの画像が存在するならば、描画効率を改善するべく、閲覧グループコントロールが当該画像に基づいて描画され、ページ上の描画されるコンテンツを減らしてもよい。
【0171】
図15は、本出願の一実施形態による、ページ描画制御装置の構造の概略図である。
図15を参照されたい。ページ描画制御装置10は、取得モジュール11および描画モジュール12を備えてもよい。
【0172】
取得モジュール11は、第1ページ用の描画命令を取得するように構成され、描画命令は、第1ページを描画するよう命令するのに使用され、第1ページは第1コントロールを含み、第1コントロールは少なくとも1つの子コントロールを含む。
【0173】
描画モジュール12は、第1コントロールに対応する画像が存在し、且つ、第1コントロールおよび第1コントロールにおける子コントロールが更新されていないと決定されるならば、第1コントロールに対応する画像に基づいて第1コントロールを描画するように構成される。
【0174】
描画モジュール12は更に、第1コントロールに対応する画像が存在しない、または、第1コントロールもしくは第1コントロールにおける子コントロールが更新されていると決定されるならば、第1コントロールに対応する画像を生成し、且つ、第1コントロールを描画するように構成される。
【0175】
任意選択で、取得モジュール11は、
図4の実施形態におけるS401および
図14の実施形態におけるS1401を実行してもよい。
【0176】
任意選択で、描画モジュール12は、
図4の実施形態におけるS402からS410、および、
図14の実施形態におけるS1402からS1403を実行してもよい。
【0177】
本出願の本実施形態におけるページ描画制御装置10は、前述の方法の実施形態に示される技術的解決手段を実行してもよいことが留意されるべきである。ページ描画制御装置10の実装原理および有益な効果は、当該技術的解決手段のそれぞれと類似しており、詳細は本明細書において再度説明しない。
【0178】
考え得る実装形態において、描画モジュール12は、具体的には、画像に対応する画像描画コマンドを生成し、第1コントロールの表示リストにおける描画コマンドを画像描画コマンドに更新し、且つ、第1コントロールの更新された表示リストに基づいて第1コントロールを描画するように構成される。
【0179】
考え得る実装形態において、描画モジュール12は、具体的には、第1コントロールの属性情報を取得し、且つ、属性情報および事前設定された描画機能に基づいて、第1コントロールに対応する画像を取得するように構成され、属性情報は、第1コントロールのサイズ、第1コントロールにおけるそれぞれの子コントロールのサイズ、および、第1コントロールにおけるそれぞれの子コントロールの位置を含む。
【0180】
考え得る実装形態において、描画モジュール12は、具体的には、第1コントロールに対応する画像を生成し、且つ、第1コントロールに対応する当該生成された画像に基づいて第1コントロールを描画するように構成される。
【0181】
考え得る実装形態において、描画モジュール12は、具体的には、第1コントロールに対応する画像を生成し、第1コントロールの表示リストを取得し、且つ、表示リストに基づいて第1コントロールを描画するように構成され、表示リストは、第1コントロール用の描画コマンドおよび第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含む。
【0182】
図16は、本出願の一実施形態による、別のページ描画制御装置の構造の概略図である。
図15に示される実施形態に基づいて、
図16を参照されたい。ページ描画制御装置10は更に、決定モジュール13を備えてもよい。決定モジュール13は、第1コントロールの状態が第1状態であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていないと決定し、または、第1コントロールの状態が第2状態であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていると決定するように構成される。
【0183】
考え得る実装形態において、ページ描画制御装置10は更に、設定モジュール14を備える。
【0184】
設定モジュール14は、第1コントロールまたは第1コントロールにおける子コントロールが更新されていることを検出された後、第1コントロールの状態は第2状態に設定するように構成される。
【0185】
設定モジュール14は更に、描画モジュール12が第1コントロールに対応する画像を生成した後、第1コントロールの状態を第1状態に設定するように構成される。
【0186】
考え得る実装形態において、第1コントロールは閲覧グループコントロールであり、第1コントロールにおける子コントロールは閲覧コントロールである。
【0187】
本出願の本実施形態におけるページ描画制御装置10は、前述の方法の実施形態に示される技術的解決手段を実行してもよいことが留意されるべきである。ページ描画制御装置10の実装原理および有益な効果は、当該技術的解決手段のそれぞれと類似しており、詳細は本明細書において再度説明しない。
【0188】
図17は、本出願の一実施形態による、電子デバイスの構造の概略図である。
図17を参照されたい。電子デバイス20は、プロセッサ21、メモリ22および通信バス23を備えてもよい。プロセッサ21は、通信バス23を介してメモリ22と通信する。プロセッサ21は、メモリ22におけるプログラム命令を実行し、プログラム命令に従って以下の段階を実行し、以下の段階は、第1ページ用の描画命令を取得する段階であって、描画命令は第1ページを描画するよう命令するのに使用され、第1ページは第1コントロールを含み、第1コントロールは少なくとも1つの子コントロールを含む、段階と、第1コントロールに対応する画像が存在し、且つ、第1コントロールおよび第1コントロールにおける子コントロールが更新されていないと決定されるならば、第1コントロールに対応する画像に基づいて第1コントロールを描画する段階、または、第1コントロールに対応する画像が存在しない、もしくは、第1コントロールあるいは第1コントロールにおける子コントロールが更新されていると決定されるならば、第1コントロールに対応する画像を生成し、且つ、第1コントロールを描画する段階と、を備える。
【0189】
任意選択で、プロセッサ21は、
図15および
図16の実施形態における、取得モジュール11、描画モジュール12、決定モジュール13および設定モジュール14の機能を実装してもよい。
【0190】
任意選択で、プロセッサ21はCPUを備えてもよい。この場合、プロセッサ21によって実行される全ての段階は、CPUによって実行されてもよい。
【0191】
任意選択で、プロセッサ21はCPUおよびGPUを備えてもよい。この場合、プロセッサ21によって実行される段階は、CPUおよびGPUによって共同して実行されてもよい。例えば、CPUは、第1ページ用の描画命令を取得し、且つ、第1コントロールに対応する画像に基づいて第1コントロールを描画してもよい。GPUは、第1コントロールに対応する画像を生成してもよい。例えば、CPUは、第1ページ用の描画命令を取得してもよい。GPUは、第1コントロールに対応する画像を生成し、且つ、第1コントロールに対応する画像に基づいて第1コントロールを描画してもよい。
【0192】
任意選択で、プロセッサ21は代替的に、別の汎用プロセッサ、デジタル信号プロセッサ(digital signal processor、DSP)、特定用途向け集積回路(application-specific integrated circuit、ASIC)等であってもよい。汎用プロセッサはマイクロプロセッサであってもよく、または、プロセッサは任意の従来型プロセッサ等であってもよい。本出願を参照して開示される方法の実施形態の複数の段階は、ハードウェアプロセッサによって直接実行されてもよく、または、プロセッサにおけるハードウェアおよびソフトウェアモジュールの組み合わせを使用することによって実行されてもよい。
【0193】
任意選択で、電子デバイスは更に、ディスプレイを備えてもよく、ディスプレイは、描画された第1コントロールを表示するように構成される。
【0194】
本出願の本実施形態における電子デバイス20は、前述の方法の実施形態に示される技術的解決手段を実行してもよいことが留意されるべきである。電子デバイス20の実装原理および有益な効果は、当該技術的解決手段のそれぞれと類似しており、詳細は本明細書において再度説明しない。
【0195】
考え得る実装形態において、プロセッサ21は、具体的には、画像に対応する画像描画コマンドを生成し、第1コントロールの表示リストにおける描画コマンドを画像描画コマンドに更新し、且つ、第1コントロールの更新された表示リストに基づいて第1コントロールを描画するように構成される。
【0196】
考え得る実装形態において、プロセッサ21は、具体的には、第1コントロールの属性情報を取得し、且つ、属性情報および事前設定された描画機能に基づいて、第1コントロールに対応する画像を取得するように構成され、属性情報は、第1コントロールのサイズ、第1コントロールにおけるそれぞれの子コントロールのサイズ、および、第1コントロールにおけるそれぞれの子コントロールの位置を含む。
【0197】
考え得る実装形態において、プロセッサ21は、具体的には、第1コントロールに対応する画像を生成し、且つ、第1コントロールに対応する当該生成された画像に基づいて第1コントロールを描画するように構成される。
【0198】
考え得る実装形態において、プロセッサ21は、具体的には、第1コントロールに対応する画像を生成し、第1コントロールの表示リストを取得し、且つ、表示リストに基づいて第1コントロールを描画するように構成され、表示リストは、第1コントロール用の描画コマンドおよび第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含む。
【0199】
考え得る実装形態において、プロセッサ21は、具体的には、第1コントロールの状態が第1状態であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていないと決定し、または、第1コントロールの状態が第2状態であるならば、第1コントロールおよび第1コントロールにおける子コントロールは更新されていると決定するように構成される。
【0200】
考え得る実装形態において、プロセッサ21は更に、第1コントロールまたは第1コントロールにおける子コントロールが更新されていることを検出した後に、第1コントロールの状態を第2状態に設定し、且つ、第1コントロールの状態を第1状態に設定するように構成される。
【0201】
考え得る実装形態において、第1コントロールは閲覧グループコントロールであり、第1コントロールにおける子コントロールは閲覧コントロールである。
【0202】
本出願の本実施形態における電子デバイス20は、前述の方法の実施形態に示される技術的解決手段を実行してもよいことが留意されるべきである。電子デバイス20の実装原理および有益な効果は、当該技術的解決手段のそれぞれと類似しており、詳細は本明細書において再度説明しない。
【0203】
図18は、本出願の一実施形態による、別の電子デバイスの構造の概略図である。
図18を参照されたい。電子デバイス100は、プロセッサ110、外部メモリインタフェース120、内部メモリ121、ユニバーサルシリアルバス(universal serial bus、USB)ポート130、充電管理モジュール140、電源管理モジュール141、バッテリ142、アンテナ1、アンテナ2、モバイル通信モジュール150、無線通信モジュール160、オーディオモジュール170、スピーカ170A、受信器170B、マイク170C、ヘッドセットジャック170D、センサモジュール180、ボタン190、モータ191、インジケータ192、カメラ193、ディスプレイ194、および加入者識別モジュール(subscriber identity module、SIM)カードインタフェース195等を含んでよい。センサモジュール180は、圧力センサ180A,ジャイロセンサ180B、気圧センサ180C、磁気センサ180D、加速度センサ180E、距離センサ180F、光学近接センサ180G、指紋センサ180H,温度センサ180J,タッチセンサ180K、環境光センサ180L、骨伝導センサ180M等を含み得る。
【0204】
本出願の本実施形態に示された構造が、電子デバイス100に対する何らかの特定の制限とはならないことが理解され得る。本出願のいくつかの他の実施形態において、電子デバイス100は、図に示されるものより多くの、または、より少ないコンポーネントを含んでもよく、いくつかのコンポーネントを組み合わせてもよく、いくつかのコンポーネントを分割してもよく、または、異なるコンポーネント構成を有してもよい。図に示されるコンポーネントは、ハードウェア、ソフトウェア、または、ソフトウェアとハードウェアとの組み合わせによって実装されてもよい。
【0205】
プロセッサ110は、1または複数の処理ユニットを含んでもよい。例えば、プロセッサ110は、アプリケーションプロセッサ(application processor、AP)、モデムプロセッサ、グラフィックス処理ユニット(graphics processing unit、GPU)、画像信号プロセッサ(image signal processor、ISP)、コントローラ、ビデオコーデック、デジタル信号プロセッサ(digital signal processor、DSP)、ベースバンドプロセッサ、および/またはニューラルネットワーク処理ユニット(neural-network processing unit、NPU)を含んでよい。複数の異なる処理ユニットは、独立したコンポーネントであってもよく、1または複数のプロセッサへと統合されてもよい。
【0206】
コントローラは、命令オペレーションコードおよび時系列信号に基づいて、操作制御信号を生成し、命令フェッチおよび命令実行の制御を完了し得る。
【0207】
メモリは更に、プロセッサ110に配置されてもよく、命令およびデータを格納するように構成される。いくつかの実施形態において、プロセッサ110におけるメモリはキャッシュである。メモリは、プロセッサ110によって使用された又は繰り返し使用された命令またはデータを格納してもよい。プロセッサ110が当該命令またはデータを再度使用することを必要とするならば、プロセッサ110は、メモリから当該命令またはデータを直接呼び出してもよい。これは、繰り返されるアクセスを回避し、プロセッサ110の待機時間を減らす。従って、システム効率は改善される。
【0208】
いくつかの実施形態において、プロセッサ110は、1または複数のインタフェースを備えてもよい。インタフェースは、集積回路間(inter-integrated circuit、I2C)インタフェース、集積回路間サウンド(inter-integrated circuit sound、I2S)インタフェース、パルス符号変調(pulse code modulation、PCM)インタフェース、汎用非同期送受信器/送信器(universal asynchronous receiver/transmitter、UART)インタフェース、モバイルインダストリプロセッサインタフェース(mobile industry processor interface、MIPI)、汎用入力/出力(general-purpose input/output、GPIO)インタフェース、加入者識別モジュール(subscriber identity module、SIM)インタフェース、ユニバーサルシリアルバス(universal serial bus、USB)ポート等を含み得る。
【0209】
I2Cインタフェースは、双方向の同期式シリアルバスであり、1本のシリアルデータライン(serial data line、SDA)と1本のシリアルクロックライン(serial clock line、SCL)とを含む。いくつかの実施形態において、プロセッサ110は、複数グループのI2Cバスを含んでもよい。プロセッサ110は、異なるI2Cバスインタフェースを介して、タッチセンサ180K、充電器、フラッシュライト、カメラ193等に別々に連結されてもよい。例えば、プロセッサ110は、I2Cインタフェースを介してタッチセンサ180Kに連結され得、その結果、プロセッサ110は、I2Cバスインタフェースを介してタッチセンサ180Kと通信し、電子デバイス100のタッチ機能を実装する。
【0210】
I2Sインタフェースは、オーディオ通信を実行するように構成されてもよい。いくつかの実施形態において、プロセッサ110は、複数グループのI2Sバスを含んでもよい。プロセッサ110は、プロセッサ110およびオーディオモジュール170の間の通信を実装するべく、I2Sバスを介してオーディオモジュール170に連結されてもよい。いくつかの実施形態において、オーディオモジュール170は、ブルートゥース(登録商標)ヘッドセットを使用することによって通話に応答する機能を実装するべく、I2Sインタフェースを介してオーディオ信号を無線通信モジュール160へと伝送してもよい。
【0211】
PCMインタフェースはまた、オーディオ通信を実行し、アナログ信号をサンプリング、量子化および符号化するように構成されてもよい。いくつかの実施形態において、オーディオモジュール170は、PCMバスインタフェースを介して無線通信モジュール160に連結されてもよい。いくつかの実施形態において、オーディオモジュール170はまた、ブルートゥース(登録商標)ヘッドセットを使用することによって通話に応答する機能を実装するべく、PCMインタフェースを介してオーディオ信号を無線通信モジュール160へと伝送してもよい。I2SインタフェースおよびPCMインタフェースの両方が、オーディオ通信を実行するように構成されてもよい。
【0212】
UARTインタフェースは汎用シリアルデータバスであり、非同期通信を実行するように構成される。バスは、双方向通信バスであってもよく、伝送予定のデータを、シリアル通信およびパラレル通信の間で変換してもよい。いくつかの実施形態において、UARTインタフェースは通常、プロセッサ110を無線通信モジュール160に接続するように構成される。例えば、プロセッサ110は、ブルートゥース(登録商標)機能を実装するべく、UARTインタフェースを介して、無線通信モジュール160におけるブルートゥース(登録商標)モジュールと通信する。いくつかの実施形態において、オーディオモジュール170は、ブルートゥース(登録商標)ヘッドセットを使用することによって音楽を再生する機能を実装するべく、UARTインタフェースを介してオーディオ信号を無線通信モジュール160へと伝送してもよい。
【0213】
MIPIインタフェースは、ディスプレイ194またはカメラ193などの周辺機器にプロセッサ110を接続するように構成されてもよい。MIPIインタフェースは、カメラシリアルインタフェース(camera serial interface、CSI)、ディスプレイシリアルインタフェース(display serial interface、DSI)等を含む。いくつかの実施形態において、プロセッサ110は、電子デバイス100の撮影機能を実装するべく、CSIインタフェースを介してカメラ193と通信する。プロセッサ110は、電子デバイス100の表示機能を実装するべく、DSIインタフェースを介してディスプレイ194と通信する。
【0214】
本出願の本実施形態に示すモジュール間のインタフェース接続関係は単に説明のための一例であり、電子デバイス100の構造に対する限定とはならないことが理解され得る。本出願のいくつかの他の実施形態において、電子デバイス100は代替的に、前述の実施形態におけるものとは異なるインタフェース接続方式、または、複数のインタフェース接続方法の組み合わせを使用してもよい。
【0215】
モバイル通信モジュール150は、電子デバイス100に適用される解決手段を、2G、3G、4G、5G等を含む無線通信に提供してもよい。モバイル通信モジュール150は、少なくとも1つのフィルタ、スイッチ、電力増幅器、低雑音増幅器(low noise amplifier、LNA)等を含んでもよい。モバイル通信モジュール150は、アンテナ1を介して電磁波を受信し、受信された電磁波に対するフィルタリングまたは増幅などの処理を実行し、処理された電磁波を復調のためにモデムプロセッサへ伝送してもよい。モバイル通信モジュール150は更に、モデムプロセッサによって変調された信号を増幅し、且つ、信号を、アンテナ1による放射用の電磁波へと変換してもよい。いくつかの実施形態において、モバイル通信モジュール150の少なくともいくつかの機能モジュールは、プロセッサ110に配置されてもよい。いくつかの実施形態において、モバイル通信モジュール150における少なくともいくつかの機能モジュールは、プロセッサ110における少なくともいくつかのモジュールと同じデバイスに配置されてもよい。
【0216】
モデムプロセッサは、変調器および復調器を含んでもよい。変調器は、送信予定の低周波数ベースバンド信号を中周波信号または高周波信号へと変調するように構成される。復調器は、受信された電磁波信号を低周波数ベースバンド信号へと復調するように構成される。次に、復調器は、処理のために、復調によって取得された低周波数ベースバンド信号をベースバンドプロセッサへと伝達する。低周波数ベースバンド信号は、ベースバンドプロセッサによって処理され、次に、アプリケーションプロセッサへと伝達される。アプリケーションプロセッサは、オーディオデバイス(スピーカ170A、受信器170B等に限定されることはない)を使用することによって音信号を出力し、または、ディスプレイ194を使用することによって画像またはビデオを表示する。いくつかの実施形態において、モデムプロセッサは、独立したコンポーネントであってもよい。いくつかの他の実施形態において、モデムプロセッサは、プロセッサ110から独立していて、且つ、モバイル通信モジュール150または別の機能モジュールと共に同じデバイスに配置されてもよい。
【0217】
無線通信モジュール160は、電子デバイス100に適用される解決手段を、無線ローカルエリアネットワーク(wireless local area networks、WLAN)(例えば、ワイヤレスフィデリティ(wireless fidelity、Wi-Fi(登録商標))ネットワーク)、ブルートゥース(登録商標)(Bluetooth(登録商標)、BT)、全球測位衛星システム(global navigation satellite system、GNSS)、周波数変調(frequency modulation、FM)、近距離無線通信(near field communication、NFC)技術、赤外線(infrared、IR)技術、等を含む無線通信に提供し得る。無線通信モジュール160は、少なくとも1つの通信処理モジュールを統合する1または複数のコンポーネントであってもよい。無線通信モジュール160は、アンテナ2を介して電磁波を受信し、電磁波信号に対して周波数変調およびフィルタリングを実行し、且つ、処理された信号をプロセッサ110へと送信する。無線通信モジュール160は更に、送信予定の信号をプロセッサ110から受信し、当該信号に対して周波数変調および増幅を実行し、且つ、処理された信号を、アンテナ2による放射用の電磁波へと変換してもよい。
【0218】
いくつかの実施形態において、電子デバイス100では、アンテナ1およびモバイル通信モジュール150は連結され、アンテナ2および無線通信モジュール160は連結され、その結果、電子デバイス100は、無線通信技術を使用することによって、ネットワークおよび別のデバイスと通信し得る。無線通信技術は、移動体通信のためのグローバルシステム(global system for mobile communications、GSM(登録商標))、汎用パケット無線サービス(general packet radio service、GPRS)、符号分割多元接続(code division multiple access、CDMA)、広帯域符号分割多元接続(wideband code division multiple access、WCDMA(登録商標))、時分割符号分割多元接続(time-division code division multiple access、TD-SCDMA)、ロングタームエボリューション(long term evolution、LTE)、BT、GNSS、WLAN、NFC、FM、IR技術、等を含み得る。GNSSは、全地球測位システム(global positioning system、GPS)、全球測位衛星システム(global navigation satellite system、GLONASS)、北斗衛星導航系統(BeiDou navigation satellite system、BDS)、準天頂衛星システム(quasi-zenith satellite system、QZSS)、および/または静止衛星型補強システム(satellite based augmentation system、SBAS)を含み得る。
【0219】
電子デバイス100は、GPU、ディスプレイ194、アプリケーションプロセッサ等によって表示機能を実装する。GPUは、画像処理用のマイクロプロセッサであり、ディスプレイ194およびアプリケーションプロセッサに接続される。GPUは、数学的および幾何学的計算を実行し、画像をレンダリングするように構成される。プロセッサ110は、プログラム命令を実行して表示情報を生成または変更する1または複数のGPUを含んでもよい。
【0220】
ディスプレイ194は、画像、ビデオ等を表示するように構成される。ディスプレイ194は、表示パネルを含む。表示パネルは、液晶ディスプレイ(liquid crystal display、LCD)、有機発光ダイオード(organic light-emitting diode、OLED)、アクティブマトリクス有機発光ダイオード(active-matrix organic light emitting diode、AMOLED)、フレキシブル発光ダイオード(flexible light-emitting diode、FLED)、ミニLED、マイクロLED、マイクロOLED、量子ドット発光ダイオード(quantum dot light emitting diodes, QLED)等を使用してもよい。いくつかの実施形態において、電子デバイス100は、1またはN個のディスプレイ194を含んでもよく、Nは1より大きい正の整数である。
【0221】
電子デバイス100は、ISP、カメラ193、ビデオコーデック、GPU、ディスプレイ194、およびアプリケーションプロセッサ等を介して撮影機能を実装し得る。
【0222】
ISPは、カメラ193によってフィードバックされるデータを処理するように構成される。例えば、撮影中、シャッタが押され、光がレンズを介してカメラの感光素子へ伝送され、光信号が電気信号に変換され、カメラの感光素子は処理のために電気信号をISPへ伝送し、電気信号を可視画像に変換する。ISPは更に、画像のノイズ、輝度および肌色に対してアルゴリズム最適化を実行してもよい。ISPは更に、撮影シナリオの露出および色温度などのパラメータを最適化してもよい。いくつかの実施形態において、ISPは、カメラ193に配置されてもよい。
【0223】
デジタル信号プロセッサは、デジタル信号を処理するように構成され、デジタル画像信号に加えて、別のデジタル信号を処理してもよい。例えば、電子デバイス100が周波数を選択する場合、デジタル信号プロセッサは、周波数エネルギーに対してフーリエ変換等を実行するように構成される。
【0224】
ビデオコーデックは、デジタル映像を圧縮または復元するように構成される。電子デバイス100は、1または複数のビデオコーデックをサポートしてもよい。従って、電子デバイス100は、例えば、エムペグ(moving picture experts group、MPEG)-1、MPEG-2、MPEG-3およびMPEG-4といった複数の符号形式で、ビデオを再生または記録してもよい。
【0225】
NPUは、ニューラルネットワーク(neural-network、NN)コンピューティングプロセッサであり、生物学的神経回路網の構造を参照することにより、例えば、人の脳神経細胞間の伝達モードを参照することにより、入力情報を迅速に処理し、更に、自己学習を継続的に実行し得る。電子デバイス100のインテリジェントコグニション、例えば、画像認識、顔認識、音声認識、およびテキスト理解などのアプリケーションは、NPUを使用することによって実装できる。
【0226】
外部メモリインタフェース120は、外部ストレージカード、例えば、マイクロSDカードに接続して、電子デバイス100の記憶容量を拡張するように構成されてもよい。外部ストレージカードは、データ記憶機能を実装するべく、外部メモリインタフェース120を介してプロセッサ110と通信する。例えば、音楽およびビデオなどのファイルが外部ストレージカードに格納される。
【0227】
内部メモリ121は、コンピュータ実行可能プログラムコードを格納するように構成されてもよい。実行可能プログラムコードは、命令を含む。内部メモリ121は、プログラム記憶領域およびデータ記憶領域を含んでもよい。プログラム記憶領域は、オペレーティングシステム、少なくとも1つの機能(例えば、音再生機能または画像再生機能)によって必要とされるアプリケーション、等を格納してもよい。データ記憶領域は、電子デバイス100を使用する処理等で作成されるデータ(例えばオーディオデータおよび電話帳)を格納してもよい。加えて、内部メモリ121は高速ランダムアクセスメモリを含んでもよく、更に、不揮発性メモリ、例えば少なくとも1つの磁気ディスク記憶コンポーネント、フラッシュメモリコンポーネントまたは汎用フラッシュストレージ(universal flash(登録商標) storage、UFS)を含んでもよい。プロセッサ110は、内部メモリ121に格納された命令、および/または、プロセッサに配置されるメモリに格納された命令を実行し、電子デバイス100の様々な機能用途およびデータ処理を実行する。
【0228】
電子デバイス100は、オーディオモジュール170、スピーカ170A、受信器170B、マイク170C、ヘッドセットジャック170D、アプリケーションプロセッサ等を使用することによって、オーディオ機能、例えば、音楽再生および記録を実装してもよい。
【0229】
オーディオモジュール170は、デジタルオーディオ情報をアナログオーディオ信号出力へと変換するように構成され、また、アナログオーディオ入力をデジタルオーディオ信号へと変換するように構成される。オーディオモジュール170は更に、オーディオ信号を符号化および復号するように構成されてもよい。いくつかの実施形態において、オーディオモジュール170はプロセッサ110に配置されてもよく、または、オーディオモジュール170のいくつかの機能モジュールがプロセッサ110に配置される。
【0230】
図17に示される電子デバイスは、
図18に示される電子デバイスと同じであってもよく、または、
図17に示される電子デバイスは、
図18に示される電子デバイスの一部であることが留意されるべきである。
【0231】
本出願の一実施形態は、記憶媒体を提供する。記憶媒体は、コンピュータプログラムを格納するように構成され、コンピュータプログラムは、前述の実施形態におけるページ描画制御方法を実装するのに使用される。
【0232】
本出願の一実施形態は、コンピュータプログラム製品を提供する。コンピュータプログラム製品は命令を含み、命令が実行された場合、コンピュータは、ページ描画制御方法を実行することを可能にされる。
【0233】
本出願の一実施形態は、システムオンチップまたはシステムチップを提供する。システムオンチップまたはシステムチップは、電子デバイスに適用されてもよく、システムオンチップまたはシステムチップは、少なくとも1つの通信インタフェースと、少なくとも1つのプロセッサと、少なくとも1つのメモリとを含む。通信インタフェース、メモリおよびプロセッサは、バスを介して相互接続され、プロセッサは、メモリに格納された命令を実行し、その結果、端末デバイスは、ページ描画制御方法を実行することを可能にされる。
【0234】
方法の実施形態における複数の段階の全てまたはいくつかは、プログラム命令に関連するハードウェアによって実装されてもよい。前述のプログラムは、可読メモリに格納されてもよい。プログラムが実行された場合、前述の方法の実施形態の複数の段階が実行される。前述のメモリ(記憶媒体)は、リードオンリメモリ(read-only memory、ROM)、RAM、フラッシュメモリ、ハードディスク、ソリッドステートドライブ、磁気テープ(magnetic tape)、フロッピディスク(floppy disk)、光ディスク(optical disc)、および、それらの任意の組み合わせを含む。
【0235】
本出願の実施形態は、本出願の実施形態による、方法、デバイス(システム)およびコンピュータプログラム製品の、フローチャートおよび/またはブロック図を参照して説明された。コンピュータプログラム命令は、フローチャートおよび/またはブロック図における各手順および/または各ブロックと、フローチャートおよび/またはブロック図における、手順および/またはブロックの組み合わせとを実装するのに使用されてもよいことが理解されるべきである。これらのコンピュータプログラム命令は、機械を生成するべく汎用コンピュータ、専用コンピュータ、組み込みプロセッサ、または、別のプログラム可能なデータ処理デバイスの処理ユニット用に提供されてもよく、その結果、コンピュータまたは別のプログラム可能なデータ処理デバイスの処理ユニットによって実行される命令は、フローチャートにおける1または複数の手順、および/または、ブロック図における1または複数のブロック、における特定の機能を実装するように構成された装置を生成する。
【0236】
これらのコンピュータプログラム命令は代替的に、コンピュータまたは別のプログラム可能なデータ処理デバイスに特定の方法で作業をするよう命令し得るコンピュータ可読メモリに格納されてもよく、その結果、コンピュータ可読メモリに格納された命令は、命令装置を含む製品を生成する。命令装置は、フローチャートにおける1または複数の手順、および/または、ブロック図における1または複数のブロック、における特定の機能を実装する。
【0237】
これらのコンピュータプログラム命令は代替的に、コンピュータ上へと、または別のプログラム可能なデータ処理デバイス上へとロードされてもよく、その結果、コンピュータ実装処理を生成するべく、複数の操作および段階のシリーズは、コンピュータ上または別のプログラム可能なデバイス上で実行される。従って、コンピュータ上または別のプログラム可能なデバイス上で実行される命令は、フローチャートにおける1または複数の手順、および/または、ブロック図における1または複数のブロック、における特定の機能を実装するための複数の段階を提供する。
【0238】
当業者であれば、本出願の趣旨および範囲を逸脱することなく本出願の実施形態に対して様々な変更および変形を加え得ることは明確である。本出願はまた、以下の特許請求の範囲およびそれらの等価技術によって示される保護範囲内に含まれる限り、本出願の実施形態に対するこれらの変更および変形をカバーすることを意図されている。
【0239】
本出願において、「含む(including)」との用語およびその変形例は、非限定的な包含を指し得、「または」との用語およびその変形例は、「および/または」を指し得る。本出願において、「第1」、「第2」等の用語は、複数の類似する対象間を区別することを意図されているが、必ずしも特定の順番またはシーケンスを示していない。本出願において、「複数の」とは、2つ、または2つより多いことを意味する。「および/または」との用語は、複数の関連する対象間の関連を説明し、且つ、3つの関係が存在し得ることを示す。例えば、Aおよび/またはBとは、以下の3つのケースを示し得、3つのケースは、Aだけが存在する場合、AおよびBの両方が存在する場合、および、Bだけが存在する場合、である。「/」との文字は一般的に、関連する対象間における「または」という関係を示す。
[他の考え得る項目]
[項目1]
ページ描画制御方法であって、
第1ページ用の描画命令を取得する段階であって、前記描画命令は前記第1ページを描画するよう命令するのに使用され、前記第1ページは第1コントロールを含み、前記第1コントロールは少なくとも1つの子コントロールを含む、段階と、
前記第1コントロールに対応する画像が存在し、且つ、前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが更新されていないと決定されるならば、前記第1コントロールに対応する前記画像に基づいて前記第1コントロールを描画する段階、または、
前記第1コントロールに対応する画像が存在しない、もしくは、前記第1コントロールあるいは前記第1コントロールにおける前記少なくとも1つの子コントロールが更新されていると決定されるならば、前記第1コントロールに対応する前記画像を生成し、且つ、前記第1コントロールを描画する段階と、
を備える方法。
[項目2]
前記第1コントロールに対応する前記画像に基づいて前記第1コントロールを描画する段階は、
前記画像に対応する画像描画コマンドを生成する段階と、
前記第1コントロールの表示リストにおける描画コマンドを前記画像描画コマンドに更新する段階と、
前記第1コントロールの更新された表示リストに基づいて前記第1コントロールを描画する段階と
を有する、項目1に記載の方法。
[項目3]
前記第1コントロールに対応する前記画像を生成する段階は、
前記第1コントロールの属性情報を取得する段階であって、前記属性情報は、前記第1コントロールのサイズ、前記第1コントロールにおけるそれぞれの子コントロールのサイズ、および、前記第1コントロールにおけるそれぞれの子コントロールの位置を含む、段階と、
前記属性情報および事前設定された描画機能に基づいて、前記第1コントロールに対応する前記画像を取得する段階と
を有する、項目1または2に記載の方法。
[項目4]
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールを描画する段階は、
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールに対応する前記生成された画像に基づいて前記第1コントロールを描画する段階、
を有する、項目1から3の何れか一項に記載の方法。
[項目5]
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールを描画する段階は、
前記第1コントロールに対応する前記画像を生成する段階と、
前記第1コントロールの前記表示リストを取得する段階であって、前記表示リストは、前記第1コントロール用の描画コマンド、および、前記第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含む、段階と、
前記表示リストに基づいて前記第1コントロールを描画する段階と
を有する、項目1から3の何れか一項に記載の方法。
[項目6]
前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが更新されていないと決定する段階は、
前記第1コントロールの状態が第1状態であるならば、前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが更新されていないと決定する段階を有し、
前記第1コントロールまたは前記第1コントロールにおける前記少なくとも1つの子コントロールが更新されていると決定する段階は、
前記第1コントロールの前記状態が第2状態であるならば、前記第1コントロールまたは前記第1コントロールにおける前記少なくとも1つの子コントロールは更新されていると決定する段階を有する、
項目1から5の何れか一項に記載の方法。
[項目7]
前記方法は更に、
前記第1コントロールまたは前記第1コントロールにおける前記少なくとも1つの子コントロールが更新されていることが検出された後に、前記第1コントロールの前記状態を前記第2状態に設定する段階を備え、
前記第1コントロールに対応する前記画像を生成する段階の後に、前記方法は更に、
前記第1コントロールの前記状態を前記第1状態に設定する段階を備える、
項目6に記載の方法。
[項目8]
前記第1コントロールは閲覧グループコントロールであり、前記第1コントロールにおける前記子コントロールは閲覧コントロールである、
項目1から7の何れか一項に記載の方法。
[項目9]
メモリおよびプロセッサを備える電子デバイスであって、
前記プロセッサは、前記メモリにおけるプログラム命令を実行し、その結果、前記電子デバイスは、
第1ページ用の描画命令を取得する段階であって、前記描画命令は前記第1ページを描画するよう命令するのに使用され、前記第1ページは第1コントロールを含み、前記第1コントロールは少なくとも1つの子コントロールを含む、段階と、
前記第1コントロールに対応する画像が存在し、且つ、前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが更新されていないと決定されるならば、前記第1コントロールに対応する前記画像に基づいて前記第1コントロールを描画する段階、または、
前記第1コントロールに対応する画像が存在しない、もしくは、前記第1コントロールあるいは前記第1コントロールにおける前記少なくとも1つの子コントロールが更新されていると決定されるならば、前記第1コントロールに対応する前記画像を生成し、且つ、前記第1コントロールを描画する段階と、
を実行することを可能にされる、電子デバイス。
[項目10]
前記第1コントロールに対応する前記画像に基づいて前記第1コントロールを描画する段階は、
前記画像に対応する画像描画コマンドを生成する段階と、
前記第1コントロールの表示リストにおける描画コマンドを前記画像描画コマンドに更新する段階と、
前記第1コントロールの更新された表示リストに基づいて前記第1コントロールを描画する段階と
を有する、項目9に記載の電子デバイス。
[項目11]
前記第1コントロールに対応する前記画像を生成する段階は、
前記第1コントロールの属性情報を取得する段階であって、前記属性情報は、前記第1コントロールのサイズ、前記第1コントロールにおけるそれぞれの子コントロールのサイズ、および、前記第1コントロールにおけるそれぞれの子コントロールの位置を含む、段階と、
前記属性情報および事前設定された描画機能に基づいて、前記第1コントロールに対応する前記画像を取得する段階と
を有する、項目9または10に記載の電子デバイス。
[項目12]
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールを描画する段階は、
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールに対応する前記生成された画像に基づいて前記第1コントロールを描画する段階、
を有する、項目9から11の何れか一項に記載の電子デバイス。
[項目13]
前記第1コントロールに対応する前記画像を生成する段階、および、前記第1コントロールを描画する段階は、
前記第1コントロールに対応する前記画像を生成する段階と、
前記第1コントロールの前記表示リストを取得する段階であって、前記表示リストは、前記第1コントロール用の描画コマンド、および、前記第1コントロールにおけるそれぞれの子コントロール用の描画コマンドを含む、段階と、
前記表示リストに基づいて前記第1コントロールを描画する段階と
を有する、項目9から11の何れか一項に記載の電子デバイス。
[項目14]
前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが更新されていないと決定する段階は、
前記第1コントロールの状態が第1状態であるならば、前記第1コントロールおよび前記第1コントロールにおける全ての前記子コントロールが更新されていないと決定する段階、または、
前記第1コントロールの状態が第2状態であるならば、前記第1コントロールまたは前記第1コントロールにおける前記少なくとも1つの子コントロールが更新されていると決定する段階、
を有する、項目9から13の何れか一項に記載の電子デバイス。
[項目15]
前記プロセッサは更に、
前記第1コントロールまたは前記第1コントロールにおける前記子コントロールが更新されていることを検出した後に、前記第1コントロールの状態を第2状態に設定し、且つ、
前記第1コントロールに対応する前記画像を生成した後に、前記第1コントロールの前記状態を前記第1状態に設定するように構成される、
項目14に記載の電子デバイス。
[項目16]
前記第1コントロールは閲覧グループコントロールであり、前記第1コントロールにおける前記子コントロールは閲覧コントロールである、
項目9から15の何れか一項に記載の電子デバイス。
[項目17]
コンピュータ可読不揮発性記憶媒体であって、
コンピュータプログラムを格納するように構成され、前記コンピュータプログラムは、コンピュータまたはプロセッサによって実行された場合に、項目1から8の何れか一項に記載のページ描画制御方法を実装するのに使用される、
記憶媒体。
[項目18]
コンピュータプログラム製品であって、
命令を備え、
前記命令が実行された場合、コンピュータが、項目1から8の何れか一項に記載のページ描画制御方法を実行することを可能にされる、
コンピュータプログラム製品。