1
我不確定標題是否清楚地說明了我在這裏的困難,但我想保持標題簡短。無論如何,我正在一個項目在Android中顯示在WebView中的Flash文件。代碼很簡單但重複。這就是爲什麼我想削減重複部分的原因。我有一個顯示文本的活動,如果有與該特定文本關聯的swf文件,則可以選擇播放按鈕。一旦我點擊播放按鈕swf文件播放。現在有很多swf文件和許多文本頁面。我不想爲'n'文件和swf動畫寫'n'活動。所以在下面的代碼中你會看到一個文件a.swf。我想用b.swf,c.swf等來改變這個特定的值。我怎樣才能做到這一點?任何建議表示讚賞。提前致謝。動態替換HTML參數的值
package com.example.testflashfile;
import android.app.Activity;
import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.view.Window;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.webkit.WebSettings.PluginState;
public class PlayAnimationActivity extends Activity
{
WebView presentationWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
setContentView(R.layout.animation_one);
String html =
"<object><embed src=\"file:///android_asset/a.swf\" width=\"100%\" height=\"100%\" max-width=\"100%\"> </embed> </object>";
String mimeType = "text/html";
String encoding = "utf-8";
WebView wv=(WebView) findViewById(R.id.presentation_webview);
wv.getSettings().setJavaScriptEnabled(true);
wv.getSettings().setPluginState(PluginState.ON);
wv.loadDataWithBaseURL("null", html, mimeType, encoding, "");
wv.setWebViewClient(new HelloWebViewClient());
}
public class HelloWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
}
我從另一個活動(播放此活動的活動)獲取swf文件的名稱如何通過intent發送swf文件名? putExtra方法應該是什麼?比如說文件名是b.swf – 2013-03-06 07:09:51
是的,你可以將數據作爲帶有意圖的字符串傳遞。閱讀http://android.mayuonline.com/2011/05/20/passing-data-with-intent/ – 2013-03-06 07:14:55
非常感謝@Mayu Mayooresan – 2013-03-06 08:53:06