设计一个菜单目录

设计一个菜单目录

一、目的:

  • 熟悉Android studio的使用.
  • 了解一些相关语法及其作用.
  • 成功地完成菜单项目.

二、技术及其代码使用

  • 获取所需要的图片.
android:src="@mipmap/c" 
  • 设置图像的位置.
 android:layout_centerHorizontal="true"
  • 设置图像的宽度和高度.
 android:layout_width="70dp"
 android:layout_height="70dp" 
  • 调整图片的与上部的距离.
 android:layout_marginTop="5dp"
  • 设置按钮.
 android:onClick="imgClicked"   Alt+Eenter
  • 为每个图片取上id.
android:id="@+id/iv_a"
  • 获取xml里面所有的图片视图
    先用一个数组保存所有的视图的id号 (R.id.iv_b)
    用一个数组保存所以id号对应的视图
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 List<ImageView> imageViews = new ArrayList<>();
private  boolean isOpen = false;
  • 将ID号对应的视图读取出来,放到ImageView里面
for (int i=0;i<resID.length;i++){
         int id=resID[i];
         ImageView img = findViewById(id);
         imageViews.add(img);
        }
  • 设置打开和关闭的动画
public void imgClicked(View view)
    {
        if (isOpen==true){
            //应该关闭
            close();
        }else{
            //应该打开
            open();
        }
        isOpen=!isOpen;
    }
private  void  close(){
        for (int i=0;i<imageViews.size();i++){
            ImageView iv =imageViews.get(i);
            ObjectAnimator oa = ObjectAnimator.ofFloat(iv,"translationY",(i+1)*220f,0f);
            oa.setDuration(1000);
            oa.start();
        }
}
private void open(){
    for (int i=0;i<imageViews.size();i++){
        ImageView iv =imageViews.get(i);
        ObjectAnimator oa = ObjectAnimator.ofFloat(iv,"translationY",0f,(i+1)*220f);
        oa.setDuration(1000);
        oa.setInterpolator(new BounceInterpolator());
        oa.start();}

三、实际使用

图片视图的设置.png

获取图像视图并对其处理编号.png

将应id提取出来,并放入img.png

设置关闭动画.png

设置打开动画.png

效果图1.png

效果图2.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容