view

Android中Button和动画

2019-09-21  本文已影响0人  黑铁选手

目的

掌握按钮的相关属性及其操作,熟悉xml配制动画和代码创建和图片的

相关技术、及其使用

1、Button的属性和大多数的属性有相同之处,例如:text、textColor、textSize和marginTop等属性都是相同的,但是还是有不同的属性,比如说:enabled属性(文本是否能操作)

 <Button
        android:id="@+id/bt_login"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"

        android:text="登录"
        android:textColor="#ff0000"
        android:textSize="25sp"
        android:tag="1"
        android:layout_marginTop="10dp"
        />

2、给按钮添加点击事件

(1)可以在xml配制文件里面使用android:onClick="login",个人意见,不建议使用,多数情况下回出错。

(2)在代码里面调用setOnClickListener(实现onClick方法)给按钮添加点击事件,如果需要实现点击按钮过后,按钮上显示的文本改变,推荐使用Lambda函数来实现。

btn.setOnClickListener((view ->{
             //推荐使用
             if (btn.getTag().equals("1")) {
                 btn.setText("done");
                 btn.setTag("0");
             } else {
                 btn.setText("edit");
                 btn.setTag("1");
             }
         }));

3、动画(animation)里面主要学习关键帧动画(FrameAnimation),关键帧动画就是使用多帧(多张图片)快速切换形成一种动画,动画里面有个重要的属性就是Duration(动画每一帧之间的间隔时间)
注意:补间动画只是一个效果,没有真正的改变属性的值,属性动画才是真正的改变了控件的属性值
关键帧动画:配制了动画的每一帧(每一张)
补间动画:只关心开始和结束的两个状态,中间的动画有系统自动补全

(1)xml配制文件中创建动画,直接添加View设置颜色大小,并添加id方便创建代码过程中调用res -> anim -> xxx.xml

<View
        android:id="@+id/v_anim"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:background="@color/colorAccent"/>

(2)代码创建动画效果步骤:
(2.1)找到需要动画的控件
(2.2)创建动画
(2.3)开启动画

   //1、创建一个动画资源
        AnimationDrawable anim = new AnimationDrawable();

        //2、添加每一帧的动画
        int[] resID = {R.drawable.campfire01,R.drawable.campfire02,R.drawable.campfire03,R.drawable.campfire04,R.drawable.campfire05,R.drawable.campfire06,R.drawable.campfire07,R.drawable.campfire08,R.drawable.campfire09,R.drawable.campfire10,R.drawable.campfire11,R.drawable.campfire12,R.drawable.campfire13,R.drawable.campfire14,R.drawable.campfire15,R.drawable.campfire16,R.drawable.campfire17};
        for(int id:resID){
            anim.addFrame(getResources().getDrawable(id,null),100);
        }
        //3、使用这个动画资源
        ImageView iv = findViewById(R.id.iv_animation);
        iv.setImageDrawable(anim);

        //4、启动动画
        anim.start();

4、补间动画相关功能xml配制文件中配制
平移:translate
缩放:scale
旋转:rotate
透明:alpha

<translate android:fromXDelta="0%" android:toXDelta="100%"/>
    <alpha android:fromAlpha="0" android:toAlpha="1.0"/>

    <scale android:fromXScale="0.1" android:toXScale="1.0" android:fromYScale="0.1" android:toYScale="1.0" android:pivotX="50%" android:pivotY="50%"/>

    <rotate android:fromDegrees="0" android:toDegrees="360" android:pivotY="50%" android:pivotX="50%"/>

PS

已经是开始Android阶段学习的第五天,一直给我的感觉就是东西很多,方法很多,记不住,其实知识点都很简单,并不复杂,但是就是很多。

上一篇下一篇

猜你喜欢

热点阅读