2019-07-28Android开发学习第一天

  今天东哥教我们用Android Studio编一个在虚拟机上运行的图案变换小程序。东哥讲解的很好,但是到我实际操作却出现了一些问题。

  开始在连接我手机做载体的虚拟机时,我的Andriod ADB端口被第三方工具占用了。在启动cmd查询无果后,我把Android Studio又重装了一遍并重启了计算机。结果这一次却连接上了(但手机上的程序解析包出现错误,只有计算机自己模拟的手机可以运行),原来是豌豆荚占用了ADB。(找不到的情况下重启计算机,能找到占用ADB的程序的话在任务管理器中关闭相关程序即可)

  下午轮到我们自己动手做早上演示的程序。开发软件分为MainActivity.java和content-main.xml两部分。MainActivity.java是来放入执行程序的,content-main.xml是做界面的布局的。

MainActivity.java中

public void imgClicked(View view) {

if(isOpen ==true){

close();

}else {

open();

}

isOpen = !isOpen;

}这个是控制点击图标后其余图标执行伸展与收缩的代码

private void close(){

for(int i =0;i

ImageView iv =imageViews.get(i);

        ObjectAnimator oa = ObjectAnimator.ofFloat(iv,"translationY",(i+1)*200f,0f);

        oa.setDuration(500);

        oa.start();

    }

}这个是控制图标收缩的代码

private void open(){

for(int i =0; i

ImageView iv =imageViews.get(i);

        ObjectAnimator oa = ObjectAnimator.ofFloat(iv,"translationY",0f,(i+1)*200f);

        oa.setDuration(1000);

        oa.setInterpolator(new BounceInterpolator());

        oa.start();

    }

}这个是控制图标伸展的代码

public class MainActivityextends AppCompatActivity {

private int[]resID = {R.id.iv_b,R.id.iv_c,R.id.iv_d,R.id.iv_e,R.id.iv_f,R.id.iv_g,R.id.iv_h};

    private ListimageViews =new ArrayList<>();

    private boolean isOpen =false;

for (int i =0;i

int id =resID[i];

    ImageView img = findViewById(id);

    imageViews.add(img);

}

这个是记录图片ID与按ID对应图片的程序

content-main.xml中

    android:id="@+id/iv_h"

    android:layout_width="60dp"

    android:layout_height="60dp"

    android:background="@mipmap/h"

    android:layout_centerHorizontal="true"

    android:layout_marginTop="5dp"

    />

这是在布局中图标的相对位置

android:onClick="imgClicked"在布局最上层的图标的点击(与覆盖图标代码主要不同之处)

你可能感兴趣的:(2019-07-28Android开发学习第一天)