WebView加载有声音的网页时,退出时关闭声音

 更新时间:2016年10月2日 16:23  点击:2118
WebView做一些打包网页app时会经常碰到一些问题,如小编碰到WebView加载有声音的网页时,退出时关闭声音,那么要如何来处理呢。

很简单的一句代码,但是不常用WebView的话,可能会忘记。在此标记一下,防止忘记,也给不知道的朋友提供帮助

webView.destroy();

在你需要销毁WebView的时候调用它。

当ListView里面有WebView,怎么办?

我有一个方法如下:

定义一个静态的List,泛型为WebView;

public static List<WebView>webs=new ArrayList<>();

在ListView的getView方法内,这样做:

webs.add(webview);

在你需要销毁WebView的地方,这样做:

for(int i=0;i< webs.size();i++){
webs.get(i).destroy();
}

分答app是一款可以让用户躺着都能赚钱的实用工具,与值乎不一样,这款软件使用付费问答的方式来获得报酬的,只要你的答案被采纳就会获得相应的报酬,下面我们来看看介绍。

分答是什么?分答付费规则是什么

分答付费规则是什么

分答的游戏规则:用户在分答上介绍自己擅长的领域,设置付费问答的价格,1元到500元之间,其他用户感兴趣就可以付费向其提问,回答必须是语音,时间限制在60秒内。而如果有人对这个问题的答案感兴趣,可以付费1元选择“偷听”,提问者与回答者都可以得到0.5元

分答偷听要多少钱

一般是需要用户花1元钱来选择偷听的,也就是说别人的问答你只需要花1元钱就可以偷听,点击播放了。比如图上王思聪的问答有1913人偷听,也就是说由1913人付费了一元,提问题的和被提问的用户也就获得了这1913元,王思聪单这个问题就截图上来说可以获得956.5元,而且还有更多人在偷听,也就是稳收利润。
腾讯企鹅汇图app安卓版是一款腾讯结合地图进行汇图赚钱的手机软件,企鹅汇图app为你带来了丰富的赚钱任务,那么企鹅汇图怎么玩呢,是不是真的可以赚钱呢?

企鹅汇图是真的吗?企鹅汇图赚钱靠谱吗?

企鹅汇图是什么软件?

企鹅汇图是一款采集类赚钱软件,产品以“汇聚你我,大有可图”为理念,用户通过完成领取的任务,上传后将会获得相应的报酬。企鹅汇图本次首发道路汇图模块,未来还会有更多模块加入,敬请期待。

企鹅汇图怎么玩?

企鹅汇图道路汇图模块主要是利用手机拍照记录道路信息。道路汇图的拍照功能采用程序定时自动拍照,用户开始执行任务后,中途自动拍摄,直至任务结束。

企鹅汇图怎么玩?企鹅汇图APP使用教程

企鹅汇图安全接入微信支付,用户提现后可在微信-我的钱包中收到奖励。

企鹅汇图应用界面简洁,操作简单方便,日常闲暇时、自驾旅途中,随手拍,顺手赚!

企鹅汇图是真的吗?

企鹅汇图是一款采集类赚钱软件,产品以“汇聚你我,大有可图”为理念,用户通过完成领取的任务,上传后将会获得相应的报酬。

企鹅汇图赚钱靠谱吗?

企鹅汇图道路汇图模块主要是利用手机拍照记录道路信息。道路汇图的拍照功能采用程序定时自动拍照,用户开始执行任务后,中途自动拍摄,直至任务结束。

企鹅汇图是真的吗?企鹅汇图赚钱靠谱吗?

企鹅汇图安全接入微信支付,用户提现后可在微信-我的钱包中收到奖励。

企鹅汇图是真的吗?企鹅汇图赚钱靠谱吗?

企鹅汇图是真的吗?企鹅汇图赚钱靠谱吗?

企鹅汇图应用界面简洁,操作简单方便,日常闲暇时、自驾旅途中,随手拍,顺手赚!

选择哪种方式进行赚钱?

在“企鹅汇图”软件有几个赚钱的途径,其中首先可以使用的是“道路汇图”模块,后续会继续开发其他模块。使用相应的模块,根据软件提示进行对应操作,进行任务。任务审核 通过,即可得到相应报酬。

企鹅汇图为什么没有苹果版?

企鹅汇图近期上线,目前仅支持安卓4.0以上系统,暂不支持iOS系统。苹果用户请耐心等待,如果苹果商城上线后,小编会第一时间通知大家的。

为什么要使用企鹅汇图软件?

使用“企鹅汇图”软件,在日常生活中(逛街、开车等情况下),只需打开软件随手拍照或记录信息,信息通过审核之后,就能赚到人民币。

企鹅汇图怎么注册账号?

当你成功下载安装企鹅汇图APP后,打开该软件,系统会自动提示你微信登录,所以企鹅汇图账号无需注册。
首次登录需用微信账号登录,登录后,需绑定手机号。
注:绑定手机号用途为发放费用及发送短信、颁发专属任务使用。

企鹅汇图怎么注册账号?企鹅汇图账号注册流程

企鹅汇图软件收费吗?

“企鹅汇图”软件本身完全免费。
在进入软件之后,根据软件提示进行手机验证。在验证完成之后,进入软件。
“企鹅汇图”软件使用过程中需要进行联网,其中产生的流量费用由对应运营商收取,具体标准请咨询当地运营商。
“企鹅汇图”软件使用过程中,需要对手机进GPS定位、拍照的操作。该数据为软件必须数据,且只会用作任务用途,不会用作他途。
Activity是Android组件中最基本也是最为常见用的四大组件(Activity,Service服务,Content Provider内容提供,BroadcastReceiver广播接收器)之一,下面我们来看Android中Activity之间的切换动画例子。


Activity进行切换的时候可以加入一些炫酷的动画,
实现代码如下:

MainActivity:

package com.example.administrator.swichlayoutdemo;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;

import com.tandong.swichlayout.BaseEffects;
import com.tandong.swichlayout.SwitchLayout;

public class MainActivity extends Activity {
    private Button btn_ok, btn_1, btn_2, btn_3, btn_4, btn_5, btn_6, btn_7,
            btn_8, btn_9, btn_10, btn_11, btn_12, btn_13, btn_14;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();

        // 设置进入Activity的Activity特效动画,同理可拓展为布局动画
        SwitchLayout.getSlideFromBottom(this, false,
                BaseEffects.getQuickToSlowEffect());
        // 三个参数分别为(Activity/View,是否关闭Activity,特效(可为空))
        initListener();
    }

    private void initListener() {
        btn_ok.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 0);
                MainActivity.this.startActivity(in);
            }
        });

        btn_1.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 1);
                MainActivity.this.startActivity(in);
            }
        });
        btn_2.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 2);
                MainActivity.this.startActivity(in);
            }
        });
        btn_3.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 3);
                MainActivity.this.startActivity(in);
            }
        });
        btn_4.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 4);
                MainActivity.this.startActivity(in);
            }
        });
        btn_5.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 5);
                MainActivity.this.startActivity(in);
            }
        });
        btn_6.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 6);
                MainActivity.this.startActivity(in);
            }
        });

        btn_7.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 7);
                MainActivity.this.startActivity(in);
            }
        });
        btn_8.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 8);
                MainActivity.this.startActivity(in);
            }
        });
        btn_9.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 9);
                MainActivity.this.startActivity(in);
            }
        });
        btn_10.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 10);
                MainActivity.this.startActivity(in);
            }
        });
        btn_11.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 11);
                MainActivity.this.startActivity(in);
            }
        });
        btn_12.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 12);
                MainActivity.this.startActivity(in);
            }
        });
        btn_13.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 13);
                MainActivity.this.startActivity(in);
            }
        });
        btn_14.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent in = new Intent(MainActivity.this, SecondActivity.class);
                in.putExtra("key", 14);
                MainActivity.this.startActivity(in);
            }
        });
    }

    private void initView() {
        btn_ok = (Button) this.findViewById(R.id.btn_ok);
        btn_1 = (Button) this.findViewById(R.id.btn_1);
        btn_2 = (Button) this.findViewById(R.id.btn_2);
        btn_3 = (Button) this.findViewById(R.id.btn_3);
        btn_4 = (Button) this.findViewById(R.id.btn_4);
        btn_5 = (Button) this.findViewById(R.id.btn_5);
        btn_6 = (Button) this.findViewById(R.id.btn_6);
        btn_7 = (Button) this.findViewById(R.id.btn_7);
        btn_8 = (Button) this.findViewById(R.id.btn_8);
        btn_9 = (Button) this.findViewById(R.id.btn_9);
        btn_10 = (Button) this.findViewById(R.id.btn_10);
        btn_11 = (Button) this.findViewById(R.id.btn_11);
        btn_12 = (Button) this.findViewById(R.id.btn_12);
        btn_13 = (Button) this.findViewById(R.id.btn_13);
        btn_14 = (Button) this.findViewById(R.id.btn_14);

    }
}
SecondActivity:

package com.example.administrator.swichlayoutdemo;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.ImageView;

import com.tandong.swichlayout.BaseEffects;
import com.tandong.swichlayout.SwichLayoutInterFace;
import com.tandong.swichlayout.SwitchLayout;

public class SecondActivity extends Activity implements SwichLayoutInterFace {
    private Intent intent;
    private ImageView iv_back;
    private int key = 0;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
        initIntent();
        // 设置进入Activity的Activity特效动画,同理可拓展为布局动画
        setEnterSwichLayout();
    }

    private void initIntent() {
        intent = getIntent();
        key = intent.getExtras().getInt("key");
        iv_back = (ImageView) this.findViewById(R.id.iv_back);
        iv_back.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                setExitSwichLayout();
            }
        });
    }

    public boolean onKeyDown(int keyCode, KeyEvent event) {// 按返回键时退出Activity的Activity特效动画

        if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
            setExitSwichLayout();
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }

    @Override
    public void setEnterSwichLayout() {
        switch (key) {
            case 0:
                SwitchLayout.get3DRotateFromLeft(this, false, null);
                // 三个参数分别为(Activity/View,是否关闭Activity,特效(可为空))
                break;
            case 1:
                SwitchLayout.getSlideFromBottom(this, false,
                        BaseEffects.getMoreSlowEffect());
                break;
            case 2:
                SwitchLayout.getSlideFromTop(this, false,
                        BaseEffects.getReScrollEffect());
                break;
            case 3:
                SwitchLayout.getSlideFromLeft(this, false,
                        BaseEffects.getLinearInterEffect());
                break;
            case 4:
                SwitchLayout.getSlideFromRight(this, false, null);
                break;
            case 5:
                SwitchLayout.getFadingIn(this);
                break;
            case 6:
                SwitchLayout.ScaleBig(this, false, null);
                break;
            case 7:
                SwitchLayout.FlipUpDown(this, false,
                        BaseEffects.getQuickToSlowEffect());
                break;
            case 8:
                SwitchLayout.ScaleBigLeftTop(this, false, null);
                break;
            case 9:
                SwitchLayout.getShakeMode(this, false, null);
                break;
            case 10:
                SwitchLayout.RotateLeftCenterIn(this, false, null);
                break;
            case 11:
                SwitchLayout.RotateLeftTopIn(this, false, null);
                break;
            case 12:
                SwitchLayout.RotateCenterIn(this, false, null);
                break;
            case 13:
                SwitchLayout.ScaleToBigHorizontalIn(this, false, null);
                break;
            case 14:
                SwitchLayout.ScaleToBigVerticalIn(this, false, null);
                break;
            default:
                break;
        }

    }

    @Override
    public void setExitSwichLayout() {
        switch (key) {
            case 0:
                SwitchLayout.get3DRotateFromRight(this, true, null);
                break;
            case 1:
                SwitchLayout.getSlideToBottom(this, true,
                        BaseEffects.getMoreSlowEffect());
                break;
            case 2:
                SwitchLayout.getSlideToTop(this, true,
                        BaseEffects.getReScrollEffect());
                break;
            case 3:
                SwitchLayout.getSlideToLeft(this, true,
                        BaseEffects.getLinearInterEffect());
                break;
            case 4:
                SwitchLayout.getSlideToRight(this, true, null);
                break;
            case 5:
                SwitchLayout.getFadingOut(this, true);
                break;
            case 6:
                SwitchLayout.ScaleSmall(this, true, null);
                break;
            case 7:
                SwitchLayout.FlipUpDown(this, true,
                        BaseEffects.getQuickToSlowEffect());
                break;
            case 8:
                SwitchLayout.ScaleSmallLeftTop(this, true, null);
                break;
            case 9:
                SwitchLayout.getShakeMode(this, true, null);
                break;
            case 10:
                SwitchLayout.RotateLeftCenterOut(this, true, null);
                break;
            case 11:
                SwitchLayout.RotateLeftTopOut(this, true, null);
                break;
            case 12:
                SwitchLayout.RotateCenterOut(this, true, null);
                break;
            case 13:
                SwitchLayout.ScaleToBigHorizontalOut(this, true, null);
                break;
            case 14:
                SwitchLayout.ScaleToBigVerticalOut(this, true, null);
                break;
            default:
                break;
        }

    }

}
 

其中强大的动画效果依赖于动画库SwitchLayout1.0.jar包

[!--infotagslink--]

相关文章

  • 用js的document.write输出的广告无阻塞加载的方法

    一、广告代码分析很多第三方的广告系统都是使用document.write来加载广告,如下面的一个javascript的广告链接。复制代码 代码如下:<script type="text/javascript" src="http://gg.5173.com/adpolestar/5173/;ap=2EBE5...2014-06-07
  • Postgresql 如何选择正确的关闭模式

    这篇文章主要介绍了Postgresl 如何选择正确的关闭模式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-18
  • jQuery页面加载初始化常用的三种方法

    当页面打开时我们需要执行一些操作,这个时候如果我们选择使用jquery的话,需要重写他的3中方法,自我感觉没什么区 别,看个人喜好了,第二种感觉比较简单明了: 第一种: 复制代码 代码如下: <script type="text/javas...2014-06-07
  • 解决IDEA插件市场Plugins无法加载的问题

    这篇文章主要介绍了解决IDEA插件市场Plugins无法加载的问题,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-10-21
  • Android WebView加载html5页面实例教程

    如果我们要在Android应用APP中加载html5页面,我们可以使用WebView,本文我们分享两个WebView加载html5页面实例应用。 实例一:WebView加载html5实现炫酷引导页面大多...2016-09-20
  • 深入理解C#窗体关闭事件

    很多初学者都想把默认的C#关闭按钮事件弄明白,本文就介绍一下C#窗体关闭事件,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-10-31
  • vue3如何按需加载第三方组件库详解

    距离 Vue 3.0 正式版发布已经有一段时间了,关于vue3组件库相关的问题还是挺多人感兴趣的,这篇文章主要给大家介绍了关于vue3如何按需加载第三方组件库的相关资料,需要的朋友可以参考下...2021-06-02
  • AngularJS 实现按需异步加载实例代码

    AngularJS 通过路由支持多视图应用, 可以根据路由动态加载所需的视图, 在 AngularJS 的文档中有详细的介绍, 网上也有不少教程, 就不用介绍了!随着视图的不断增加,js文件会越来越多,而 AngularJS 默认需要把全部的js都一次性...2015-10-21
  • Angular性能优化之第三方组件和懒加载技术

    这篇文章主要介绍了Angular性能优化之第三方组件和懒加载技术,对性能优化感兴趣的同学,可以参考下...2021-05-11
  • 解决vue动态路由异步加载import组件,加载不到module的问题

    这篇文章主要介绍了解决vue动态路由异步加载import组件,加载不到module的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-07-27
  • 几种延迟加载JS代码的方法加快网页的访问速度

    本文介绍了如何延迟javascript代码的加载,加快网页的访问速度。 当一个网站有很多js代码要加载,js代码放置的位置在一定程度上将会影像网页的加载速度,为了让我们的网页加载速度更快,本文总结了一下几个注意点...2013-10-13
  • ThinkPHP+jquery实现“加载更多”功能代码

    本篇文章主要介绍了ThinkPHP+jquery实现“加载更多”功能代码,以实例代码讲诉了加载更多的代码实现,非常具有实用价值,需要的朋友可以参考下 ...2017-03-13
  • C#实现延时并自动关闭MessageBox的方法

    这篇文章主要介绍了C#实现延时并自动关闭MessageBox的方法,非常实用的功能,需要的朋友可以参考下...2020-06-25
  • 关于python pygame游戏进行声音添加的技巧

    这篇文章主要给大家分享的是pygame游戏进行声音添加的方法,这文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!...2021-10-23
  • C#窗体编程不显示最小化、最大化、关闭按钮的方法

    这篇文章主要介绍了C#窗体编程不显示最小化、最大化、关闭按钮的方法,即windows forms编程中取消最小化、最大化、关闭按钮,需要的朋友可以参考下...2020-06-25
  • 用C++面向对象的方式动态加载so的方法

    下面小编就为大家带来一篇用C++面向对象的方式动态加载so的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-04-25
  • jQuery Easyui使用(二)之可折叠面板动态加载无效果的解决方法

    这篇文章主要介绍了jQuery Easyui使用之可折叠面板动态加载无效果的解决方案,非常不错,具有参考借鉴价值,感兴趣的朋友一起看下吧...2016-08-24
  • 基于Pycharm加载多个项目过程图解

    这篇文章主要介绍了基于Pycharm加载多个项目过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-04-22
  • jQuery实现模仿微博下拉滚动条加载数据效果

    这篇文章主要介绍了jQuery实现模仿微博下拉滚动条加载数据效果,涉及jQuery响应下拉滚动事件动态操作页面元素的技巧,需要的朋友可以参考下...2015-12-27
  • C#中调用DLL时未能加载文件或程序集错误的处理方法(详解)

    下面小编就为大家带来一篇C#中调用DLL时未能加载文件或程序集错误的处理方法(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25