2012-07-13 79 views
1

我在Android中創建了一個應用程序。它有一個名爲佈局main.xml中幾秒後在Webview中加載網址

的main.xml:

<ImageView 
     android:id="@+id/imageView1" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:src="@drawable/splashscreen" /> 

mainActivity.java:

public class MainActivity extends WebViewActivity{ 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     DisplayMetrics displaymetrics = new DisplayMetrics(); 
     getWindowManager().getDefaultDisplay().getMetrics(displaymetrics); 
     int height = displaymetrics.heightPixels; 
     int wwidth = displaymetrics.widthPixels; 
     setContentView(R.layout.main); 
     final ImageView imgview=(ImageView)findViewById(R.id.imageView1); 
     imgview.setLayoutParams(new LinearLayout.LayoutParams(wwidth, 
       height, 0.0F)); 
     int DELAY = 6000; 

     Handler handler = new Handler(); 
     handler.postDelayed(new Runnable() {    
      public void run() 
      { 
       WebViewActivity.loadurl("file:///android_asset/www/index.htm");     
      } 
     }, DELAY); 

    } 
} 

首先要加載main.xml中,6秒後我想要加載網址在webview。 WebViewActivity有代碼加載...

我按照上面的編碼...

結果:最初main.xml中加載完美......但在6秒後使用loadURL方法被調用,但主。 xml不會被刪除。這個怎麼做?

注意: WebViewActivity具有webview的佈局。

回答

1

我按照下面的編碼......我沒用過的main.xml網頁...直接裝入的WebView ...... 工作好:-)

public class MainActivity extends WebViewActivity{ 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     WebViewActivity.loadurl("file:///android_asset/www/splashscreen.png"); 
     int DELAY = 6000; 

     Handler handler = new Handler(); 
     handler.postDelayed(new Runnable() {    
      public void run() 
      { 
       WebViewActivity.loadurl("file:///android_asset/www/index.htm"); 
      } 
     }, DELAY); 

    } 
} 
0

,你應該在你的main.xml網頁視圖視圖...

,或者你讓anoher佈局XML和使用的setContentView(R.layout.anotherlayoutxml);

+0

檢查我的答案... – Ponmalar 2012-07-13 09:13:05

0

您的mainActivity使用setContentView(layout)來定義與此活動相關的XML。您的main.xml只包含正確顯示的圖像。在您的WebViewActivity加載的URL,並留下這樣的說法,不會做太多,因爲它沒有顯示

解決方案:

1) 開始一個新的WebViewActivity:

handler.postDelayed(new Runnable() {    

     public void run() 
     { 
      Intent myIntent = new Intent(this, WebViewActivity.class); 
      startActivity(myIntent); 
      finish(); 
     } 
    }, DELAY); 

創建一個XML您WebViewActivity包括WebView 在OnCreate:

myWebView = (WebView) findViewById(R.id.myWebView); 
myWebView.loadurl("file:///android_asset/www/index.htm"); 

注: mainActivity不必從WebViewActivity在這種情況下延長

2)setVisibility()

main.xml中

<ImageView /> 
<WebView 
     id:myWebView 
     visibility:invisible /> 

在OnCreate你已經可以載入您的網址進入你的WebView。處理程序只會在您想要時顯示視圖。

handler.postDelayed(new Runnable() {    
     public void run() 
     { 
      myWebView.setVisibility(View.VISIBLE); 
     } 
    }, DELAY); 
+0

我的主要佈局沒有webview。必須從WebViewActivity添加webview。 – Ponmalar 2012-07-13 08:39:26

+0

檢查我的答案... – Ponmalar 2012-07-13 09:13:17

0
You can do it like this 

// first add a progress dialog 

ProgressDialog dialog ; 

//Initialize in OnCreate 

dialog = new ProgressDialog(this); 

//and call the following function 

     display(); 

private void display() { 
// TODO Auto-generated method stub 
new CountDownTimer(6000, 1000) { 

public void onTick(long millisUntilFinished) { 
// mTextField.setText("seconds remaining: " + millisUntilFinished/1000); 
dialog.show(); 
} 

public void onFinish() { 

dialog.dismiss(); 
} 
}.start(); 

} 
+0

我想顯示圖像適合屏幕,而不是進度條,然後加載一個URL – Ponmalar 2012-07-13 08:40:55

+0

檢查我的答案... – Ponmalar 2012-07-13 09:12:45

+0

不錯Ponmalar你soled問題由你自己 – 2012-07-13 09:24:01