1.無(wú)法播放網(wǎng)頁(yè)視頻,這是因?yàn)閁E4的WebBrowser自帶的cef3為3071版本,默認(rèn)不支持h264等直播流,導(dǎo)致web里的直播流無(wú)法播放
解決辦法:第一種辦法,重新編譯了cef源碼,改成支持H.264,然后在UE4安裝目錄下替換相關(guān)文件,網(wǎng)上有教程自己搜。第二種辦法是直接找改好的插件,桃寶
2.隱藏網(wǎng)頁(yè)滑動(dòng)條
解決辦法:使用webbrowser的ExecuteJavascript函數(shù)執(zhí)行js代碼,這段代碼的大概意思就是將滑動(dòng)條的長(zhǎng)寬設(shè)置為0以此來(lái)達(dá)到隱藏滑動(dòng)條目的,需要注意的是js代碼需要在網(wǎng)頁(yè)完全加載完才能正確執(zhí)行js代碼,然而UE這邊沒(méi)有關(guān)于網(wǎng)頁(yè)完全加載完畢的回調(diào),所以需要在使用這個(gè)函數(shù)前加個(gè)delay,具體delay多少自行測(cè)試
var style = document.createElement('style');style.type = 'text/css';style.innerHTML = '::-webkit-scrollbar {width: 0px;height: 0px;}';document.getElementsByTagName('head')[0].appendChild(style);
3.用webbrowser打開的網(wǎng)頁(yè)在編輯框內(nèi)無(wú)法輸入中文
解決辦法:修改源碼,找到WebViewBrowser.cpp里的RebuildWidget函數(shù)里進(jìn)行修改
//支持中文輸入
ITextInputMethodSystem* const TextInputMethodSystem = FSlateApplication::Get().GetTextInputMethodSystem();
WebViewBrowserWidget->BindInputMethodSystem(TextInputMethodSystem);
4.在觸摸屏不支持上下滑動(dòng),這是因?yàn)樵赪ebViewBrowserViewport類里面沒(méi)有重寫OnTouchMoved方法
解決辦法:重寫這個(gè)方法并實(shí)現(xiàn)邏輯,還有一個(gè)問(wèn)題就是當(dāng)你的觸摸屏上移動(dòng)時(shí)會(huì)同時(shí)觸發(fā)OnMouseButtonDown和OnTouchMove函數(shù),這樣就會(huì)導(dǎo)致在移動(dòng)的過(guò)程中如果觸碰到網(wǎng)頁(yè)中的button按鈕,網(wǎng)頁(yè)中滑動(dòng)的邏輯和點(diǎn)擊button的邏輯會(huì)同時(shí)觸發(fā),因此需要在OnMouseButtonUp里做判斷不讓button事件觸發(fā),大概邏輯就是判斷按下和抬起時(shí)在不在同一位置
virtual FReply OnTouchMoved(const FGeometry& MyGeometry, const FPointerEvent& InTouchEvent) override;
FVector2D clickpos;
clickpos = MouseEvent.GetScreenSpacePosition();
FVector2D vec = MouseEvent.GetScreenSpacePosition() - clickpos;
if (!(FMath::Abs(vec.Y) < 1))
{
return FReply::Handled();
}
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-652998.html
FReply FWebViewBrowserViewport::OnTouchMoved(const FGeometry& MyGeometry, const FPointerEvent& InTouchEvent)
{
FVector2D vec = InTouchEvent.GetCursorDelta();
FString str = FString::Printf(TEXT("window.scrollBy(0,%f);"), vec.Y * -1);
WebViewBrowserWindow->ExecuteJavascript(str);
return FReply::Handled();
}
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-652998.html
到了這里,關(guān)于UE4 關(guān)于使用Webbrowser插件遇到的問(wèn)題以及解決辦法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!