আমি আমার জিএল ভিউয়ের উপর একটি স্বচ্ছ এইচটিএমএল ওভারলে রাখার চেষ্টা করছিলাম তবে এটিতে সবসময় কালো জ্বলজ্বল থাকে যা আমার জিএল ভিউটি coversেকে দেয়। এই ঝলকানি থেকে মুক্তি পাওয়ার চেষ্টা করার পরে বেশ কয়েক দিন পরে আমি এই কার্যকারিতাটি পেয়েছি যা আমার কাছে গ্রহণযোগ্য (তবে অ্যান্ড্রয়েডের জন্য লজ্জাজনক)।
সমস্যাটি হ'ল আমার দুর্দান্ত সিএসএস অ্যানিমেশনগুলির জন্য আমার হার্ডওয়্যার ত্বরণ প্রয়োজন এবং এটি আমার webView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);পক্ষে কোনও বিকল্প নয়।
কৌশলটি ছিল WebViewআমার জিএল ভিউ এবং এইচটিএমএল ওভারলেটির মধ্যে একটি দ্বিতীয় (খালি) রাখার । এটি dummyWebViewআমি এসডাব্লু মোডে রেন্ডার করতে বলেছিলাম, এবং এখন আমার এইচটিএমএল ওভারলেগুলি এইচডব্লিউতে মসৃণ রেন্ডার করে এবং আরও কোনও কালো ঝাঁকুনি দেয় না।
আমার এসার আইকনিয়া এ 700 ছাড়া এটি অন্য ডিভাইসে কাজ করে কিনা আমি জানি না তবে আমি আশা করি আমি এটির সাহায্যে কাউকে সহায়তা করতে পারব।
public class MyActivity extends Activity {
@Override
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
RelativeLayout layout = new RelativeLayout(getApplication());
setContentView(layout);
MyGlView glView = new MyGlView(this);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT);
dummyWebView = new WebView(this);
dummyWebView.setLayoutParams(params);
dummyWebView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
dummyWebView.loadData("", "text/plain", "utf8");
dummyWebView.setBackgroundColor(0x00000000);
webView = new WebView(this);
webView.setLayoutParams(params);
webView.loadUrl("http://10.0.21.254:5984/ui/index.html");
webView.setBackgroundColor(0x00000000);
layout.addView(glView);
layout.addView(dummyWebView);
layout.addView(webView);
}
}