1.简介
本文首要先容如安在Android应用措施中行使Mugeda动画。Mgeda动画是尺度HTML5名目标动画,在Android应用措施中可以行使WebView来加载Mugeda动画。动画内容自己可以放在应用措施当地,也可以放在远端。
先来看一下Mugeda动画的名目。下图中展示了一个典范Mugeda动画的文件布局。对付
Android应用措施来说,必要加载index.html来打开动画。
下面用一个实例在演示怎样行使,这个实例的界面如下图所示。中间的白色地区是WebView用来揭示Mugeda动画。点击当地震画按钮让WebView加载当地震画,点击远端动画让WebView加载远端处事器上的动画。
2.1 建设工程并添加Mugeda动画到当地
起首必要建设一个Android工程,这里不赘述了。建设好工程之后,为了加载当地震画,起首必要将Mugeda动画添加到工程中,我们将它放到assets目次下。
2.2 添加并设置WebView
2.2.1 修改应用措施的机关文件activity_main.xml,改成下面的内容:
xmlns:tools=""
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity" >
android:id="@+id/webview" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" /> android:layout_width="match_parent" android:layout_height="50dp" > <Button android:id="@+id/local" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:text="当地震画" /> <Button android:id="@+id/remote" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:text="远端动画" />
2.2.2 之后开始设置WebView:
public class MainActivity extends Activity {
WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//为WebView开启JavaScript和ViewPort
mWebView = (WebView)findViewById(R.id.webview);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setUseWideViewPort(true);
}
}
因为Mugeda动画包括JavaScript代码,可是WebView默认不执行JavaScript代码,以是必要开启。其它开启ViewPort是为了可以或许更让Mugeda动画在各类屏幕上自顺应。
2.3 绑定按钮变乱,别离加载当地和远端动画:
设置好WebView之后,为2个按钮配置变乱。
当地震画按钮点击之后,加载当地URL寓目动画:
file:///android_asset/mugeda/index.html
远端地震画按钮点击之后,加载远端URL寓目动画,请填入您测试时辰的URL:
public class MainActivity extends Activity {
WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//为WebView开启JavaScript和ViewPort
mWebView = (WebView)findViewById(R.id.webview);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setUseWideViewPort(true);
Button localBtn = (Button)findViewById(R.id.local);
Button remoteBtn = (Button)findViewById(R.id.remote);
//加载当地震画
localBtn.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
mWebView.loadUrl("file:///android_asset/mugeda/index.html");
}
});
//加载远端动画
remoteBtn.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
mWebView.loadUrl("");
}
});
}
}
请留意将上面赤色的URL换成您测试时辰的现实地点。
2.4 添加收集权限
为了让android应用措施会见远端处事器,必要开启收集权限,必要设置AndroidManifest.XML文件。将下面这句话添加到AndroidManifest.XML文件中即可:
2.5 功效
之后将应用措施陈设到测试机上,点击当地震画或远端动画,会看到下面的结果。
3.1 透明配景
偶然为了到达某种结果,也许必要将WebView配景变透明,实现如下:
//配置配景透明
WebView.setBackgroundColor(Color.argb(0, 0, 0, 0));
//在高版本的Android体系中,必要封锁硬件加快才气让配景透明
if(android.os.Build.VERSION.SDK_INT>=11){
WebView.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);
}
将WebView配置为透明后,下面说一下怎样将动画自己配置为透明。起首打开动画编辑页面,修改配景颜色在左下方
(