一種可滑動播放窗口的實現方法和裝置的制造方法
【技術領域】
[0001]本發(fā)明涉及計算機技術,具體涉及一種可滑動播放窗口的實現方法和裝置。
【背景技術】
[0002]本申請發(fā)明人在實現本申請實施例技術方案的過程中,至少發(fā)現相關技術中存在如下技術問題:
[0003]在安卓(Android)4.0版本之前,市場上的Android平臺上的播放器分成兩種,一種是自研播放器,一種是系統播放器。無論是自研播放器還是系統播放器,播放器的圖像繪制一般都采用SurfaceView或者GLSurfaceView的方式完成。但是,這兩種圖像繪制方式都會導致一個缺點:播放器的播放窗口不支持可滑動。在Android4.0版本之后,出現了一種新的圖像繪制方式:TextureView,這種繪制方式能夠實現系統播放器和自研播放器的播放窗口支持可滑動,但是對于使用了硬件加速的自研播放器仍不能實現可滑動。
[0004]綜上所述,在兩種場景下播放器的播放窗口顯示的圖像不支持可滑動,I)Android4.0版本以上硬件加速的自研播放器的場景;2)Android4.0版本以下的系統播放器和自研播放器的場景。對于這兩個場景中,播放窗口顯示的圖像不支持可滑動的問題,相關技術中并未存在有效的解決方案。
【發(fā)明內容】
[0005]有鑒于此,本發(fā)明實施例希望提供一種可滑動播放窗口的實現方法和裝置,能夠解決各種播放器環(huán)境下播放窗口實現滑動的問題。
[0006]本發(fā)明實施例的技術方案是這樣實現的:
[0007]本發(fā)明實施例提供了一種可滑動播放窗口的實現方法,所述方法包括:
[0008]當系統環(huán)境符合預設的圖像繪制策略時調用第一繪制圖層以及支持移動屬性的視圖層;
[0009]將所述第一繪制圖層和所述支持移動屬性的視圖層疊加得到第二繪制圖層,將所述第二繪制圖層放入圖像布局中,以通過所述圖像布局支持所述待顯示的圖像的移動。
[0010]上述方案中,所述方法還包括:
[0011]當接收到所述圖像的展示觸發(fā)時,生成第一指令,執(zhí)行所述第一指令播放所述圖像;
[0012]當接收到所述圖像的移動觸發(fā)時,生成第二指令;執(zhí)行所述第二指令并根據所述支持移動屬性的視圖層的支持移動功能的屬性,移動所述圖像。
[0013]上述方案中,所述支持移動屬性的視圖層為以下支持移動屬性的視圖層的至少之一:文本視圖TextView、圖片視圖1mageView。
[0014]上述方案中,所述當接收到所述圖像的移動觸發(fā)時,生成第二指令,執(zhí)行所述第二指令并根據所述支持移動屬性的視圖層的支持移動功能的屬性,移動所述圖像,包括:
[0015]當接收到所述圖像的移動觸發(fā)時,獲取針對所述圖像的移動觸發(fā)操作的初始位置和終止位置,根據所述初始位置和所述終止位置確定所述圖像的偏移量;
[0016]生成第二指令,執(zhí)行所述第二指令并根據所述支持移動屬性的視圖層的支持移動功能的屬性,按所述偏移量移動所述圖像。
[0017]上述方案中,所述系統環(huán)境符合預設的圖像繪制策略,包括:
[0018]所述系統環(huán)境為安卓4.0版本以下,則符合所述圖像繪制策略;
[0019]或者,
[0020]所述系統環(huán)境為安卓4.0版本以上且待使用硬件加速的自研播放器播放所述圖像,則符合所述圖像繪制策略。
[0021]本發(fā)明實施例還提供了一種可滑動播放窗口的實現裝置,所述裝置包括:調用單元和疊加處理單元;其中,
[0022]所述調用單元,用于當系統環(huán)境符合預設的圖像繪制策略時調用第一繪制圖層以及支持移動屬性的視圖層;
[0023]所述疊加處理單元,用于將所述調用單元調用的所述第一繪制圖層和所述支持移動屬性的視圖層疊加得到第二繪制圖層,將所述第二繪制圖層放入圖像布局中,以通過所述圖像布局支持所述待顯示的圖像的移動。
[0024]上述方案中,所述裝置還包括:展示單元和移動單元;其中,
[0025]所述展示單元,用于當接收到所述待顯示的圖像的展示觸發(fā)時,生成第一指令,執(zhí)行所述第一指令播放所述待顯示的圖像;
[0026]所述移動單元,用于當接收到所述展示單元播放的所述圖像的移動觸發(fā)時,生成第二指令;執(zhí)行所述第二指令并根據所述支持移動屬性的視圖層的支持移動功能的屬性,移動所述圖像。
[0027]上述方案中,所述支持移動屬性的視圖層為以下支持移動屬性的視圖層的至少之一:文本視圖TextView、圖片視圖1mageView。
[0028]上述方案中,所述移動單元,用于當接收到所述圖像的移動觸發(fā)時,獲取針對所述圖像的移動觸發(fā)操作的初始位置和終止位置,根據所述初始位置和所述終止位置確定所述圖像的偏移量;生成第二指令,執(zhí)行所述第二指令并根據所述支持移動屬性的視圖層的支持移動功能的屬性,按所述偏移量移動所述圖像。
[0029]上述方案中,所述系統環(huán)境符合預設的圖像繪制策略,包括:
[0030]所述系統環(huán)境為安卓4.0版本以下,則符合所述圖像繪制策略;
[0031]或者,
[0032]所述系統環(huán)境為安卓4.0版本以上且待使用硬件加速的自研播放器播放所述圖像,則符合所述圖像繪制策略。
[0033]本發(fā)明實施例提供的可滑動播放窗口的實現方法和裝置,所述方法包括:繪制播放窗口待顯示的圖像之前檢測系統環(huán)境;當所述系統環(huán)境符合預設的圖像繪制策略時調用第一繪制圖層以及支持移動屬性的視圖層;將所述第一繪制圖層和所述支持移動屬性的視圖層疊加得到第二繪制圖層,將所述第二繪制圖層放入圖像布局中,以通過所述圖像布局支持所述待顯示的圖像的移動。采用本發(fā)明實施例,實現了 Android4.0以下版本的終端設備中的播放器和Android4.0以上版本的終端設備中使用硬件加速的自研播放器的播放窗口的滑動,大大提高了用戶的操作體驗。
【附圖說明】
[0034]圖1為本發(fā)明實施例一的可滑動播放窗口的實現方法的流程示意圖;
[0035]圖2為本發(fā)明實施例中在將第一繪制圖層和支持移動屬性的視圖層疊加得到第二繪制圖層的示意圖;
[0036]圖3為本發(fā)明實施例二的可滑動播放窗口的實現方法的流程示意圖;
[0037]圖4為本發(fā)明實施例中圖像移動的示意圖;
[0038]圖5為本發(fā)明實施例三的可滑動播放窗口的實現方法的流程示意圖;
[0039]圖6為本發(fā)明實施例一的可滑動播放窗口的實現裝置的組成結構示意圖;
[0040]圖7為本發(fā)明實施例二的可滑動播放窗口的實現裝置的組成結構示意圖。
【具體實施方式】
[0041 ] 下面結合附圖及具體實施例對本發(fā)明作進一步詳細的說明。
[0042]圖1為本發(fā)明實施例一的可滑動播放窗口的實現方法的流程示意圖;如圖1所示,所述方法包括:
[0043]步驟101:當系統環(huán)境符合預設的圖像繪制策略時調用第一繪制圖層以及支持移動屬性的視圖層。
[0044]這里,所述可滑動播放窗口的實現方法應用于終端設備中,所述終端設備為具有安卓系統的智能終端設備;則調用所述第一繪制圖層之前,所述智能終端設備在繪制播放窗口待顯示的圖像之前檢測系統環(huán)境,以根據所述系統環(huán)境確定繪制方式。所述系統環(huán)境符合預設的圖像繪制策略,包括:所述系統環(huán)境為安卓4.0版本以下,則符合所述圖像繪制策略;或者,所述系統環(huán)境為安卓4.0版本以上且待使用硬件加速的自研播放器播放所述圖像,則符合所述圖像繪制策略。這是因為當所述智能終端設備的安卓系統版本不低于4.0且所述智能終端設備默認采用自研播放器或系統播放器播放圖像時,可以直接采用現有的TextureView方式繪制圖像;當所述智能終端設備的安卓系統版本低于4.0和/或所述智能終端設備待采用硬件加速的自研播放器播放圖像時,即本步驟中所述的所述系統環(huán)境符合預設的圖像繪制策略時,采用本發(fā)明實施例所述的技術方案;這樣不僅能夠最大限度的使用系統提供的原生繪制方式繪制圖像,而且還能夠擴展支持低版本的系統使其能夠滿足可滑動的效果。
[0045]本發(fā)明實施例中,所述第一繪制圖層具體可以為通過SurfaceView或者GLSurfaceView方式繪制的圖層;所述第一繪制圖層表征圖像繪制的區(qū)域,即在所述區(qū)域中繪制圖像。
[0046]這里,所述支持移動屬性的視圖層具有支持移動功能的屬性特征,即在安卓系統中,基于攜帶有所述支持移動屬性的視圖層的圖像布局生成的圖像能夠通過用戶操作,從而移動所述圖像在顯示屏中的顯示位置。其中,所述支持移動屬性的視圖層可以是以下圖層的至少之一:文本視圖(TextView)、圖片視圖(ImageView)。
[0047]步驟102:將所述第一繪制圖層和所述支持移動屬性的視圖層疊加得到第二繪制圖層。
[0048]這里,在所述第一繪制圖層中添加所述文本視圖(TextView)和/或圖片視圖(ImageView)時,優(yōu)選地,所述支持移動屬性的視圖層中不包括任何內容,即所述文本視圖(TextView)和/或圖片視圖(ImageView)中不添加任何內容,即所述文本視圖(TextView)中不填寫任何文本信息,所述圖片視圖(ImageView)中不添加任何圖片信息,以便不會