2017-01-16 2 views
-2

Я следил за этим учебным пособием https://www.youtube.com/watch?v=QD9nhyWX-gs, чтобы создать анимированный всплывающий экран, который является моим логотипом, который делает один поворот на 360 °, который текст и фон под ним после поворота открывает веб-представление, отображающее google.com. au, но у него есть этот белый фон, когда он загружает веб-страницу, и мне нужно, чтобы он загружал веб-страницу заранее в заставку и сохранял анимацию, повторяющуюся до загружаемого веб-сайта, код довольно простой - это просто вращающееся изображение.Загрузка URL-адреса WebView перед завершением работы с брызгами

Только что попробовал:

public class WelcomeActivity extends Activity { 
WebView web; 
ImageView imageView; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_welcome); 

    web = (WebView) findViewById(R.id.webView); 

    web.setWebViewClient(new myWebClient()); 
    web.getSettings().setJavaScriptEnabled(true); 
    web.loadUrl("http://www.voxelservers.net"); 
    imageView = (ImageView) findViewById(R.id.imageView); 
} 

public class myWebClient extends WebViewClient 
{ 
    @Override 
    public void onPageStarted(WebView view, String url, Bitmap favicon) { 
     // TODO Auto-generated method stub 
     super.onPageStarted(view, url, favicon); 
    } 

    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     // TODO Auto-generated method stub 

     view.loadUrl(url); 
     return true; 

    } 

    @Override 
    public void onPageFinished(WebView view, String url) { 
     // TODO Auto-generated method stub 
     super.onPageFinished(view, url); 

     imageView.setVisibility(View.GONE); 
    } 
} 

// To handle "Back" key press event for WebView to go back to previous screen. 
@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) 
{ 
    if ((keyCode == KeyEvent.KEYCODE_BACK) && web.canGoBack()) { 
     web.goBack(); 
     return true; 
    } 
    return super.onKeyDown(keyCode, event); 
} 

}

его просто черный экран.

ответ

0

Один из способов добиться этого - это не открытие нового вида деятельности для веб-просмотра, . В WelcomeActivity.java сам добавить webView и imageView в макет и сделать веб-просмотр невидимым или утерянным.

В открывшемся окне WelcomeActivity инициализируется webView и настраивается пользователем WebViewClient. Переопределите onPageFinished() в своем пользовательском webViewClient и в этом методе сделайте видимым видимость веб-просмотра и imageView to Gone.

+0

Попробуй это сейчас, а не самое лучшее с javascript, так что если я получу что-то неправильно, плохой пост назад здесь –

+0

1. Где твоя анимация? 2. В onPageFinished() вы делаете ImageView To Gone, это прекрасно, но видимость webView видима, как показано ниже. imageView.setVisibility (View.GONE); web.setVisibility (View.VISIBLE); – Abilash

+0

Исправлено, спасибо за помощь. –