Android基础入门教程——8.4.3 Android动画合集之属性动画-初见
Android基础入门教程——8.4.3 Android动画合集之属性动画-初见
标签(空格分隔): Android基础入门教程
本节引言:
本节给带来的是Android动画中的第三种动画——属性动画(Property Animation),
记得在上一节Android基础入门教程——8.4.2 Android动画合集之补间动画为Fragment
设置过渡动画的时候,说过,App包和V4包下的Fragment调用setCustomAnimations()对应的
动画类型是不一样的,v4包下的是Animation,而app包下的是Animator;
Animation一般动画就是我们前面学的帧动画和补间动画!Animator则是本节要讲的属性动画!
关于属性动画,大牛郭大叔已经写了三篇非常好的总结文,写得非常赞,就没必要重复造轮子了,
不过这里还是过一遍,大部分内容参考的下面三篇文章:
Android属性动画完全解析(上),初识属性动画的基本用法
Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法
Android属性动画完全解析(下),Interpolator和ViewPropertyAnimator的用法
写的非常好,或者说你可以直接跳过本文去看上面的三篇文章~
当然,你愿意看我叨叨逼的话,也很欢迎,好了,开始本节内容吧~
1.属性动画概念叨叨逼
不BB,直接上图,就是这么暴力~
2.ValueAnimator简单使用
使用流程:
- 1.调用ValueAnimator的ofInt(),ofFloat()或ofObject()静态方法创建ValueAnimator实例
- 2.调用实例的setXxx方法设置动画持续时间,插值方式,重复次数等
- 3.调用实例的addUpdateListener添加AnimatorUpdateListener监听器,在该监听器中
可以获得ValueAnimator计算出来的值,你可以值应用到指定对象上~- 4.调用实例的start()方法开启动画!
另外我们可以看到ofInt和ofFloat都有个这样的参数:float/int… values代表可以多个值!
使用示例:
代码实现:
布局文件:activity_main.xml,非常简单,四个按钮,一个ImageView
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/ly_root"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><Buttonandroid:id="@+id/btn_one"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="动画1" /><Buttonandroid:id="@+id/btn_two"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="动画2" /><Buttonandroid:id="@+id/btn_three"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="动画3" /><Buttonandroid:id="@+id/btn_four"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="动画4" /><ImageViewandroid:id="@+id/img_babi"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center"android:background="@mipmap/img_babi" /></LinearLayout>
接着到MainActivity.java,
首先需要一个修改View位置的方法,这里调用moveView()设置左边和上边的起始坐标以及宽高!
接着定义了四个动画,分别是:直线移动,缩放,旋转加透明,以及圆形旋转!
然后通过按钮触发对应的动画~
public class MainActivity extends AppCompatActivity implements View.OnClickListener {private Button btn_one;private Button btn_two;private Button btn_three;private Button btn_four;private LinearLayout ly_root;private ImageView img_babi;private int width;private int height;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);bindViews();}private void bindViews() {ly_root = (LinearLayout) findViewById(R.id.ly_root);btn_one = (Button) findViewById(R.id.btn_one);btn_two = (Button) findViewById(R.id.btn_two);btn_three = (Button) findViewById(R.id.btn_three);btn_four = (Button) findViewById(R.id.btn_four);img_babi = (ImageView) findViewById(R.id.img_babi);btn_one.setOnClickListener(this);btn_two.setOnClickListener(this);btn_three.setOnClickListener(this);btn_four.setOnClickListener(this);img_babi.setOnClickListener(this);}@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.btn_one:lineAnimator();break;case R.id.btn_two:scaleAnimator();break;case R.id.btn_three:raAnimator();break;case R.id.btn_four:circleAnimator();break;case R.id.img_babi:Toast.makeText(MainActivity.this, "不愧是coder-pig~", Toast.LENGTH_SHORT).show();break;}}//定义一个修改ImageView位置的方法private void moveView(View view, int rawX, int rawY) {int left = rawX - img_babi.getWidth() / 2;int top = rawY - img_babi.getHeight();int width = left + view.getWidth();int height = top + view.getHeight();view.layout(left, top, width, height);}//定义属性动画的方法://按轨迹方程来运动private void lineAnimator() {width = ly_root.getWidth();height = ly_root.getHeight();ValueAnimator xValue = ValueAnimator.ofInt(height,0,height / 4,height / 2,height / 4 * 3 ,height);xValue.setDuration(3000L);xValue.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {@Overridepublic void onAnimationUpdate(ValueAnimator animation) {// 轨迹方程 x = width / 2int y = (Integer) animation.getAnimatedValue();int x = width / 2;moveView(img_babi, x, y);}});xValue.setInterpolator(new LinearInterpolator());xValue.start();}//缩放效果private void scaleAnimator(){//这里故意用两个是想让大家体会下组合动画怎么用而已~final float scale = 0.5f;AnimatorSet scaleSet = new AnimatorSet();ValueAnimator valueAnimatorSmall = ValueAnimator.ofFloat(1.0f, scale);valueAnimatorSmall.setDuration(500);ValueAnimator valueAnimatorLarge = ValueAnimator.ofFloat(scale, 1.0f);valueAnimatorLarge.setDuration(500);valueAnimatorSmall.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {@Overridepublic void onAnimationUpdate(ValueAnimator animation) {float scale = (Float) animation.getAnimatedValue();img_babi.setScaleX(scale);img_babi.setScaleY(scale);}});valueAnimatorLarge.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {@Overridepublic void onAnimationUpdate(ValueAnimator animation) {float scale = (Float) animation.getAnimatedValue();img_babi.setScaleX(scale);img_babi.setScaleY(scale);}});scaleSet.play(valueAnimatorLarge).after(valueAnimatorSmall);scaleSet.start();//其实可以一个就搞定的
// ValueAnimator vValue = ValueAnimator.ofFloat(1.0f, 0.6f, 1.2f, 1.0f, 0.6f, 1.2f, 1.0f);
// vValue.setDuration(1000L);
// vValue.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
// @Override
// public void onAnimationUpdate(ValueAnimator animation) {
// float scale = (Float) animation.getAnimatedValue();
// img_babi.setScaleX(scale);
// img_babi.setScaleY(scale);
// }
// });
// vValue.setInterpolator(new LinearInterpolator());
// vValue.start();}//旋转的同时透明度变化private void raAnimator(){ValueAnimator rValue = ValueAnimator.ofInt(0, 360);rValue.setDuration(1000L);rValue.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {@Overridepublic void onAnimationUpdate(ValueAnimator animation) {int rotateValue = (Integer) animation.getAnimatedValue();img_babi.setRotation(rotateValue);float fractionValue = animation.getAnimatedFraction();img_babi.setAlpha(fractionValue);}});rValue.setInterpolator(new DecelerateInterpolator());rValue.start();}//圆形旋转protected void circleAnimator() {width = ly_root.getWidth();height = ly_root.getHeight();final int R = width / 4;ValueAnimator tValue = ValueAnimator.ofFloat(0,(float) (2.0f * Math.PI));tValue.setDuration(1000);tValue.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {@Overridepublic void onAnimationUpdate(ValueAnimator animation) {// 圆的参数方程 x = R * sin(t) y = R * cos(t)float t = (Float) animation.getAnimatedValue();int x = (int) (R * Math.sin(t) + width / 2);int y = (int) (R * Math.cos(t) + height / 2);moveView(img_babi, x, y);}});tValue.setInterpolator(new DecelerateInterpolator());tValue.start();}
}
好的,使用的流程非常简单,先创建ValueAnimator对象,调用ValueAnimator.ofInt/ofFloat
获得,然后设置动画持续时间,addUpdateListener添加AnimatorUpdateListener事件监听,
然后使用参数animation的getAnimatedValue()获得当前的值,然后我们可以拿着这个值
来修改View的一些属性,从而形成所谓的动画效果,接着设置setInterpolator动画渲染模式,
最后调用start()开始动画的播放~
卧槽,直线方程,圆的参数方程,我都开始方了,这不是高数的东西么,
挂科学渣连三角函数都忘了…
例子参考自github:MoveViewValueAnimator
3.ObjectAnimator简单使用
比起ValueAnimator,ObjectAnimator显得更为易用,通过该类我们可以直接
对任意对象的任意属性进行动画操作!没错,是任意对象,而不单单只是View对象,
不断地对对象中的某个属性值进行赋值,然后根据对象属性值的改变再来决定如何展现
出来!比如为TextView设置如下动画:
ObjectAnimator.ofFloat(textview, “alpha”, 1f, 0f);
这里就是不断改变alpha的值,从1f - 0f,然后对象根据属性值的变化来刷新界面显示,从而
展现出淡入淡出的效果,而在TextView类中并没有alpha这个属性,ObjectAnimator内部机制是:
寻找传输的属性名对应的get和set方法~,而非找这个属性值!
不信的话你可以到TextView的源码里找找是否有alpha这个属性!
好的,下面我们利用ObjectAnimator来实现四种补间动画的效果吧~
运行效果图:
代码实现:
布局直接用的上面那个布局,加了个按钮,把ImageView换成了TextView,这里就不贴代码了,
直接上MainActivity.java部分的代码,其实都是大同小异的~
public class MainActivity extends AppCompatActivity implements View.OnClickListener {private Button btn_one;private Button btn_two;private Button btn_three;private Button btn_four;private Button btn_five;private LinearLayout ly_root;private TextView tv_pig;private int height;private ObjectAnimator animator1;private ObjectAnimator animator2;private ObjectAnimator animator3;private ObjectAnimator animator4;private AnimatorSet animSet;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);bindViews();initAnimator();}private void bindViews() {ly_root = (LinearLayout) findViewById(R.id.ly_root);btn_one = (Button) findViewById(R.id.btn_one);btn_two = (Button) findViewById(R.id.btn_two);btn_three = (Button) findViewById(R.id.btn_three);btn_four = (Button) findViewById(R.id.btn_four);btn_five = (Button) findViewById(R.id.btn_five);tv_pig = (TextView) findViewById(R.id.tv_pig);height = ly_root.getHeight();btn_one.setOnClickListener(this);btn_two.setOnClickListener(this);btn_three.setOnClickListener(this);btn_four.setOnClickListener(this);btn_five.setOnClickListener(this);tv_pig.setOnClickListener(this);}//初始化动画private void initAnimator() {animator1 = ObjectAnimator.ofFloat(tv_pig, "alpha", 1f, 0f, 1f, 0f, 1f);animator2 = ObjectAnimator.ofFloat(tv_pig, "rotation", 0f, 360f, 0f);animator3 = ObjectAnimator.ofFloat(tv_pig, "scaleX", 2f, 4f, 1f, 0.5f, 1f);animator4 = ObjectAnimator.ofFloat(tv_pig, "translationY", height / 8, -100, height / 2);}@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.btn_one:animator1.setDuration(3000l);animator1.start();break;case R.id.btn_two:animator2.setDuration(3000l);animator2.start();break;case R.id.btn_three:animator3.setDuration(3000l);animator3.start();break;case R.id.btn_four:animator4.setDuration(3000l);animator4.start();break;case R.id.btn_five://将前面的动画集合到一起~animSet = new AnimatorSet();animSet.play(animator4).with(animator3).with(animator2).after(animator1);animSet.setDuration(5000l);animSet.start();break;case R.id.tv_pig:Toast.makeText(MainActivity.this, "不愧是coder-pig~", Toast.LENGTH_SHORT).show();break;}}
}
用法也非常简单,上面涉及到的组合动画我们下面讲~
4.组合动画与AnimatorListener
从上面两个例子中我们都体验了一把组合动画,用到了AnimatorSet这个类!
我们调用的play()方法,然后传入第一个开始执行的动画,此时他会返回一个Builder类给我们:接下来我们可以调用Builder给我们提供的四个方法,来组合其他的动画:
- after(Animator anim) 将现有动画插入到传入的动画之后执行
- after(long delay) 将现有动画延迟指定毫秒后执行
- before(Animator anim) 将现有动画插入到传入的动画之前执行
- with(Animator anim) 将现有动画和传入的动画同时执行
嗯,很简单,接下来要说下动画事件的监听,上面我们ValueAnimator的监听器是
AnimatorUpdateListener,当值状态发生改变时候会回调onAnimationUpdate方法!
除了这种事件外还有:动画进行状态的监听~ AnimatorListener,我们可以调用addListener方法
添加监听器,然后重写下面四个回调方法:
- onAnimationStart():动画开始
- onAnimationRepeat():动画重复执行
- onAnimationEnd():动画结束
- onAnimationCancel():动画取消
没错,加入你真的用AnimatorListener的话,四个方法你都要重写,当然和前面的手势那一节一样,
Android已经给我们提供好一个适配器类:AnimatorListenerAdapter,该类中已经把每个接口
方法都实现好了,所以我们这里只写一个回调方法也可以额!
5.使用XML来编写动画
使用XML来编写动画,画的时间可能比Java代码长一点,但是重用起来就轻松很多!
对应的XML标签分别为:<animator><objectAnimator><set>
相关的属性解释如下:
- android:ordering:指定动画的播放顺序:sequentially(顺序执行),together(同时执行)
- android:duration:动画的持续时间
- android:propertyName=”x”:这里的x,还记得上面的”alpha”吗?加载动画的那个对象里需要
定义getx和setx的方法,objectAnimator就是通过这里来修改对象里的值的!- android:valueFrom=”1” :动画起始的初始值
- android:valueTo=”0” :动画结束的最终值
- android:valueType=”floatType”:变化值的数据类型
使用例子如下:
①从0到100平滑过渡的动画:
<animator xmlns:android="http://schemas.android.com/apk/res/android" android:valueFrom="0" android:valueTo="100" android:valueType="intType"/>
②将一个视图的alpha属性从1变成0:
<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android" android:valueFrom="1" android:valueTo="0" android:valueType="floatType" android:propertyName="alpha"/>
③set动画使用演示:
<set android:ordering="sequentially" ><set><objectAnimator
android:duration="500"android:propertyName="x"android:valueTo="400"android:valueType="intType" /><objectAnimator
android:duration="500"android:propertyName="y"android:valueTo="300"android:valueType="intType" /></set><objectAnimator
android:duration="500"android:propertyName="alpha"android:valueTo="1f" />
</set>
加载我们的动画文件:
AnimatorSet set = (AnimatorSet)AnimatorInflater.loadAnimator(mContext, R.animator.property_animator);
animator.setTarget(view);
animator.start();
6.本节示例代码下载:
AnimatorDemo1.zip
AnimatorDemo2.zip
本节小结:
好的,本节给大家捋了一捋安卓中属性动画的基本用法,不知道你get了没,内容还是比较简单
的,而且例子比较有趣,相信大家会喜欢,嗯,就说这么多,谢谢~
感谢郭神的文章~
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 教你快速学会二进制、十进制、十六进制之间的转换
目 录介绍常用进制二进制十进制十六进制进制间的转换二进制 转 十进制十进制 转 二进制十六进制 转 十进制十进制 转 十六进制二进制 转 十六进制十六进制 转 二进制©本文由博主原创,未经允许,不得转载相关博文内容介绍我相信很多大学计算机专业的学生还依然不懂它们…...
2024/4/20 18:18:54 - 考完研,才知道考研路上的这三个大坑!
作为一个过来人,表示考研的坑真的很多,我当年的数学考得很难,除了数学之外其他都考的还行,最后总分380+。由于年代比较久远,确实有一些事情记得不是很清楚了,这里只讲重点。1、培训班培训班真的是一个坑,考研培训机构真的太多了,什么旧西方,启x,导x,文x等各种各样的…...
2024/4/20 18:18:53 - AndroidStudio安装配置教程
转载请注明出处:http://blog.csdn.net/m0_37240709/article/details/76069176 一、简介 Android Studio作为Google推荐的安卓开发第一利器,为绝大多数安卓开发人员钟爱。那要怎样对AS进行安装和配置呢?下面小依手把手带你走进AS的大门。 先来介绍两个网址,第一个是AS中文社…...
2024/4/20 18:18:53 - 【寒假学习】考研高数第三章-中值定理与一元微分应用
考研数学一 高等数学 目录 文章目录考研数学一高等数学@[toc]第三章 中值定理与一元微分应用一. 中值定理1. 预备知识:2. Rolle定理3. Lagrange 拉格朗日 定理4. Canchy 柯西定理5. 题型:6. TayLar 泰勒二. 单调性与极值1. 步骤2. 题型:1. 凹凸性2. 渐近线3. 弧微分 第三章 …...
2024/4/20 18:18:51 - H builder项目Dcloud离线打包Android教程(一)
app开发发展的越来越迅速,从原生开发到react native,再到基于h5+的H builder开发。官网上的离线打包教程看起来挺乱的,本人整理了下。希望后来人也少走些弯路。(官网教程地址:http://ask.dcloud.net.cn/article/38) 准备环境:eclipse,Android开发环境,或者直接下集成版…...
2024/4/20 18:18:50 - 吉林大学计算机学院电子信息(专硕)考研经验分享
目录自我介绍数学初识考研数学考研数学重要性复习数学的态度考研数学大纲重视数学基础对押题和客观题的思考英语考研英语真题作文基础阶段强化阶段冲刺阶段政治专业课联系方式自我介绍本人本科就读于吉林大学计算机学院,报考的是2020年吉大计算机专硕,属于报考本校,总分418 …...
2024/4/20 18:18:51 - 使用Android Studio 进行cocos2d-x开发入门全攻略(教程)
在配置cocos2d-x Android开发环境时,发现网上的教程大多针对Eclipse (> _<) ,自己捣鼓了很久才在配置好可以使用Android Studio 调试的cocos2d-x环境。不过使用Android Studio开发感觉真的很棒啊,不会有Eclipse一堆莫名其妙的错误(才不会说我其实是懒得折腾๑乛◡乛๑…...
2024/4/21 9:01:49 - 2018考研计算机408经验详谈
2018浙大计算机考研经验总述2018考研数学经验详谈考研408经验详谈备考时间:2017.03.10基础情况:数据结构,计组,操作系统,网络水过。。。基础约为零。。。实考成绩:133前言:408备考最讲求“反复多次与全面”,这句话在王道单科书-《操作系统复习指导》中出现了三次,可见…...
2024/4/21 9:01:47 - eclipse--android开发环境搭建教程
引言在windows安装Android的开发环境不简单也说不上算复杂,但由于国内无法正常访问google给android开发环境搭建带来不小的麻烦。现将本人搭建过程记录如下,希望会对投身android开发的小伙伴有所帮助。android开发环境部署过程安装JDK环境 下载安装eclipse工具 下载安装and…...
2024/4/21 9:01:46 - 思维导图---考研高数---极限---笔记--汤家凤
思维导图—考研高数—极限—笔记–汤家凤 基础视频第一部分 有可以改进的地方欢迎提出,笔者非常接受建议的,还有看不清的点一下放大后是清晰的 :) 先上框架缩略图下面部分是全部展开...
2024/4/24 9:33:02 - 黑马Android开发视频教程125集
专题地址:http://www.apkbus.com/heima/ 黑马Android入门到精通 视频教程 01.什么是3G? 03_android的背景介绍 05_两种虚拟机的比较 07_创建android模拟器 09_platform-tools简介&adb指令 02_android系统简介 04_android的framework简介 06_sdk的下载&简介 08_ddms…...
2024/4/21 9:01:45 - 2019汤家凤高等数学讲义
2019年汤家凤在文都面授班所使用 汤家凤高等数学讲义 PDF+视频 链接:https://pan.baidu.com/s/17Ar_NkWIDgZtn6n6AVdG4A 密码:hhn1...
2024/4/21 9:01:45 - STC51入门笔记(郭天祥C语言)---第十节:(一)使用 DS18B20 温度传感器设计温控系统
项目实现功能: 使用51开发板上的DS18B20温度传感器设计温控系统,要求如下:用串口将采集到的温度数据实时发送至上位机,在上位机软件上显示当前温度值(关于上位机软件的编写请参考下篇VB 内容)。关于温度变化的实现,大家可参考以下方法: 室温通常在 28C左右,用手捏住温…...
2024/4/21 9:01:42 - android studio视频教程
导语:随着Eclipse在Android开发中逐渐被冷落和淘汰,其现在已经停止了更新,大部分人也越来越重视了AS的使用,很多人都已经慢慢转向了使用AS开发Android应用。对于一些还没有转移阵地的同学来说,对于不了解Android Studio的初学者来说,有一款非常好的视频教程再好不过…...
2024/4/21 9:01:41 - 19考研经验之谈
19考研经验之谈原文已分享本人博客 18年年末,结束了一整年的考研复习之旅,要是可以进入复试,文章还会持续更新这次考研的经历,希望这篇文章,可以为以后考研的同学一些帮助。 我本科山东渣渣二本,计算机专业,考取杭州电子科技大学计算机专业研究生。说到杭电,今年特…...
2024/4/21 9:01:40 - 2020考研复习书籍推荐(针对数学二)
2020考研复习书籍推荐(针对数学二)1.政治蒋中挺——复习全书+800题任燕翔——主观题应试宝典还有他们俩在"一直播"和"腾讯直播"的免费直播课2.英语何凯文——1575词汇何凯文——考研英语阅读理解何凯文——长难句解析何凯文——写作指导一直播3.数学汤家凤…...
2024/4/21 9:01:40 - Qt on Android:图文详解Hello World全过程
这是系列文章中的一篇,阅读本文前请先阅读《Windows下Qt 5.2 for Android开发入门》,以便确保开发环境和作者一致。 部分文章被转发/转载却没有注明出处,特此声明:版权所有 foruok ,如需转载敬请注明出处(http://blog.csdn.net/foruok)。 我将从实践出发,带领大家一…...
2024/4/21 9:01:39 - Android基础入门教程——10.6 PowerManager(电源服务)
Android基础入门教程——10.6 PowerManager(电源服务)标签(空格分隔): Android基础入门教程本节引言:本节要讲解的是Android为我们提供的系统服务中的——PowerManager(电源服务),用于 管理CPU运行,键盘或屏幕亮起来;不过,除非迫不得已,否则进来别去使用这个类,假如 …...
2024/4/21 9:01:37 - 【寒假学习】考研高数第一章-极限与连续
考研数学一 高等数学 目录 文章目录考研数学一高等数学第一章 极限与连续一 函数与极限二 连续与函数第一章 极限与连续 2020.2 山东潍坊 汤家凤高等数学视频课 一 函数与极限函数及其性质求导一次奇偶性互换,周期性不变f(x)+f(-x) 偶函数; f(x)-f(-x) 奇函数奇偶变换,复合…...
2024/4/21 9:01:37 - Linux on Android 简单教程
介绍: Linux on Android,顾名思义,就是让你能在Android上跑linux。。。。步骤: 1.下载所需的文件: 项目主页为:tinyurl.com cn3lxgz 在这里举Ubuntu 13.10为例,下载tinyurl.com lp7fqw4 Core只有最基本的东西,没界面。。但是我的sd卡空间过小,只好用这个, Small就有界…...
2024/4/27 8:44:36
最新文章
- 基于php+mysql+html图书管理系统(含实训报告)
博主介绍: 大家好,本人精通Java、Python、Php、C#、C、C编程语言,同时也熟练掌握微信小程序、Android等技术,能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验,能够为学生提供各类…...
2024/5/3 14:03:49 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - 算法四十天-删除排序链表中的重复元素
删除排序链表中的重复元素 题目要求 解题思路 一次遍历 由于给定的链表是排好序的,因此重复的元素在链表中的出现的位置是连续的,因此我们只需要对链表进行一次遍历,就可以删除重复的元素。 具体地,我们从指针cur指向链表的头节…...
2024/5/1 13:07:13 - ArcGIS10.8保姆式安装教程
ArcGIS 10.8是一款非常强大的地理信息系统软件,用于创建、管理、分析和可视化地理数据。以下是ArcGIS 10.8的详细安装教程: 确保系统满足安装要求 在开始安装之前,请确保您的计算机满足以下系统要求: 操作系统:Windo…...
2024/5/3 3:48:00 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/1 17:30:59 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/5/2 16:16:39 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/4/29 2:29:43 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/5/2 9:28:15 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/4/27 17:58:04 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/4/27 14:22:49 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/4/28 1:28:33 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/4/30 9:43:09 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/4/27 17:59:30 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/5/2 15:04:34 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/4/28 1:34:08 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/4/26 19:03:37 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/4/29 20:46:55 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/4/30 22:21:04 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/1 4:32:01 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/4/27 23:24:42 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/4/28 5:48:52 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/4/30 9:42:22 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/5/2 9:07:46 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/4/30 9:42:49 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57