android - 动态替换 HTML 参数的值

标签 android html webview flash

我不确定标题是否清楚地说明了我在这里遇到的困难,但我想保持标题简短。无论如何,我正在 android 中的一个项目中工作,其中在 WebView 中显示 flash 文件。代码简单但重复。这就是为什么我想削减重复部分的原因。如果有与该特定文本关联的 swf 文件,我有一个显示文本并提供播放按钮选项的 Activity 。一旦我点击播放按钮 swf 文件播放。现在swf文件很多,文本页也很多。我不想为“n”个文件和 swf 动画编写“n”个 Activity 。所以在下面的代码中,您将看到一个文件 a.swf。我想用 b.swf、c.swf 等更改该特定值。我怎样才能做到这一点?任何建议表示赞赏。提前致谢。

    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;
        }

    }
}

最佳答案

这是用户进行选择时将要更改的部分

String html = "<object><embed src=\"file:///android_asset/a.swf\" width=\"100%\" height=\"100%\" max-width=\"100%\"> </embed> </object>";

您将不得不编写一个新方法来接收用户选择并返回与选择相关的字符串

public String getMyHTMLString(String userSelection){
 String htmlString = "<object><embed src=\"file:///android_asset/"+userSelection+".swf\" width=\"100%\" height=\"100%\" max-width=\"100%\"> </embed> </object>";
 return htmlString;
}

关于android - 动态替换 HTML 参数的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15240359/

相关文章:

ios - 加载 WebView 时 Swift 中的 EXC_BAD_INSTRUCTION

android - 如何预填充 Green DAO sqlite 数据库

java - 当对象键为数字时如何创建 Java getter 和 setter

android - 我应该如何避免内存不足错误?

html - 使用 XSLT 识别特定的 XHTML 单元格,并在找到它们后修改它们的属性

javascript - <noscripts/> 转义其自己的 &lt;iframe&gt; 内容

cocoa - 当 WebView 添加到 NSWindow 中的特定 View 时,:hover stops working. 如何修复此问题?

android - 隐藏 Android "loading" View 以显示另一个 View

html - 对齐标签和文本字段

javascript - react native WebView : Load html and js from assets folder