• 4.7专业相框的设计ImageView的堆栈使用


    4.7专业相框的设计---ImageView的堆栈使用

    目录

    4.7专业相框的设计---ImageView的堆栈使用... 1

    目标:1

    方法:1

    获取图片资源的方法:1

    代码:1

    只使用一个ImageView.1

    使用两个Imageview堆叠.3

    改进代码:6

    效果:7

     

    目标:单击按钮更换图片,并且中间的ImageView固定不变.

    方法:

    获取图片资源的方法:getResources().getDrawable(R.drawable.xx)

    代码:

    只使用一个ImageView.

    package edu.cquptzx.ImageView;

     

    import android.app.Activity;

    import android.os.Bundle;

    import android.view.View;

    import android.widget.Button;

    import android.widget.ImageView;

     

    publicclass ImageViewActivity extends Activity

    {

        private ImageView iv1;

        private Button btn1,btn2;

        /** Called when the activity is first created. */

        @Override

        publicvoid onCreate(Bundle savedInstanceState)

        {

            super.onCreate(savedInstanceState);

            setContentView(R.layout.main);

          

            System.out.println("A");

            iv1 = (ImageView)findViewById(R.id.myImageView1);

           // iv2 = (ImageView)findViewById(R.id.myImageView2);   

            btn1 = (Button) findViewById(R.id.myButton1);

            btn2 = (Button) findViewById(R.id.myButton2);

           

            System.out.println("B");

            iv1.setImageDrawable(getResources().getDrawable(R.drawable.right));

           // iv2.setImageDrawable(getResources().getDrawable(R.drawable.oa));

           

            System.out.println("C");

           

            btn1.setOnClickListener(new Button.OnClickListener()

            {

               publicvoid onClick(View v)

               {

                  System.out.println("D");

                  iv1.setImageDrawable(getResources().getDrawable(R.drawable.right));

                  System.out.println("E");

               }       

            });

            btn2.setOnClickListener(new Button.OnClickListener()

            {

               publicvoid onClick(View v)

               {

                  System.out.println("F");

                  iv1.setImageDrawable(getResources().getDrawable(R.drawable.left));

                  System.out.println("G");

               }       

            });

           

           

        }

    }

    ==================================

    <?xml version="1.0" encoding="utf-8"?>

    <AbsoluteLayout

      android:id="@+id/widget34"

      android:layout_width="fill_parent"

      android:layout_height="fill_parent"

      xmlns:android="http://schemas.android.com/apk/res/android"

      >

      <!--建立第一個ImageView -->

      <ImageView

      android:id="@+id/myImageView1"

      android:layout_width="320px"

      android:layout_height="280px"

      android:layout_x="0px"

      android:layout_y="36px"

      />

     

      <!--建立第一個Button -->

      <Button

      android:id="@+id/myButton1"

      android:layout_width="105px"

      android:layout_height="66px"

      android:text="pic1"

      android:layout_x="9px"

      android:layout_y="356px"

      />

      <!--建立第二個Button -->

      <Button

      android:id="@+id/myButton2"

      android:layout_width="105px"

      android:layout_height="66px"

      android:text="pic2"

      android:layout_x="179px"

      android:layout_y="356px"

      />

    </AbsoluteLayout>

     

     

     

    使用两个Imageview堆叠.

    package edu.cquptzx.ImageView;

     

    import android.app.Activity;

    import android.os.Bundle;

    import android.view.View;

    import android.widget.Button;

    import android.widget.ImageView;

     

    publicclass ImageViewActivity extends Activity

    {

        private ImageView iv1,iv2;

        private Button btn1,btn2;

        /** Called when the activity is first created. */

        @Override

        publicvoid onCreate(Bundle savedInstanceState)

        {

            super.onCreate(savedInstanceState);

            setContentView(R.layout.main);

          

            System.out.println("A");

            iv1 = (ImageView)findViewById(R.id.myImageView1);

            iv2 = (ImageView)findViewById(R.id.myImageView2);   

            btn1 = (Button) findViewById(R.id.myButton1);

            btn2 = (Button) findViewById(R.id.myButton2);

           

            System.out.println("B");

            iv1.setImageDrawable(getResources().getDrawable(R.drawable.right));

            iv2.setImageDrawable(getResources().getDrawable(R.drawable.oa));

           

            System.out.println("C");

           

            btn1.setOnClickListener(new Button.OnClickListener()

            {

               publicvoid onClick(View v)

               {

                  System.out.println("D");

                  iv1.setImageDrawable(getResources().getDrawable(R.drawable.right));

                  System.out.println("E");

               }       

            });

            btn2.setOnClickListener(new Button.OnClickListener()

            {

               publicvoid onClick(View v)

               {

                  System.out.println("F");

                  iv1.setImageDrawable(getResources().getDrawable(R.drawable.left));

                  System.out.println("G");

               }       

            });

           

           

        }

    }

     

    ==============================

    <?xml version="1.0" encoding="utf-8"?>

    <AbsoluteLayout

      android:id="@+id/widget34"

      android:layout_width="fill_parent"

      android:layout_height="fill_parent"

      xmlns:android="http://schemas.android.com/apk/res/android"

      >

      <!--建立第一個ImageView -->

      <ImageView

      android:id="@+id/myImageView1"

      android:layout_width="320px"

      android:layout_height="280px"

      android:layout_x="0px"

      android:layout_y="36px"

      />

      <!--建立第二個ImageView -->

      <ImageView

      android:id="@+id/myImageView2"

      android:layout_width="104px"

      android:layout_height="157px"

      android:layout_x="101px"

      android:layout_y="119px"

      />

      <!--建立第一個Button -->

      <Button

      android:id="@+id/myButton1"

      android:layout_width="105px"

      android:layout_height="66px"

      android:text="pic1"

      android:layout_x="9px"

      android:layout_y="356px"

      />

      <!--建立第二個Button -->

      <Button

      android:id="@+id/myButton2"

      android:layout_width="105px"

      android:layout_height="66px"

      android:text="pic2"

      android:layout_x="179px"

      android:layout_y="356px"

      />

    </AbsoluteLayout>

    改进代码:

    package edu.cquptzx.ImageView;

     

    import android.app.Activity;

    import android.os.Bundle;

    import android.view.View;

    import android.widget.Button;

    import android.widget.ImageView;

     

    publicclass ImageViewActivity extends Activity

    {

        private ImageView iv1,iv2;

        private Button btn1,btn2;

        privateintID;

        /** Called when the activity is first created. */

        @Override

        publicvoid onCreate(Bundle savedInstanceState)

        {

            super.onCreate(savedInstanceState);

            setContentView(R.layout.main);

          

            //找到对象;

            iv1 = (ImageView)findViewById(R.id.myImageView1);

            iv2 = (ImageView)findViewById(R.id.myImageView2);   

            btn1 = (Button) findViewById(R.id.myButton1);

            btn2 = (Button) findViewById(R.id.myButton2);

           

            //初始化ImageView

            iv1.setImageDrawable(getResources().getDrawable(R.drawable.right));

            iv2.setImageDrawable(getResources().getDrawable(R.drawable.oa));

     

            //对按钮添加监听器

            btn1.setOnClickListener(btnOnClickListener);

            btn2.setOnClickListener(btnOnClickListener);   

        }

        private Button.OnClickListener btnOnClickListener = new Button.OnClickListener()

        {

           @Override

           publicvoid onClick(View v) {

               // TODO Auto-generated method stub

               ID =  v.getId();

               switch(ID)

               {

                  case R.id.myButton1:

                      iv1.setImageDrawable(getResources().getDrawable(R.drawable.right));

                      break;

                  case R.id.myButton2:

                      iv1.setImageDrawable(getResources().getDrawable(R.drawable.left));

                      break;

                  default:

                      break;

               }

           }  

        };

    }

    效果:

     

     效果_使用2个ImageView堆叠 效果_使用1个Imageview

    For more details , contacts me by :

    cquptzx@qq.com or  cquptzx@outlook.com

     

  • 相关阅读:
    基本计数方法
    每天工作4小时的程序员
    明星软件工程师的10种特质(转)
    IT高薪者所具备的人格魅力
    Unity_Shader开发_图形学基础(五)--------2016.1.9
    unity 架构设计的学习
    深入浅出聊优化:从Draw Calls到GC
    PG+mask替代透明Png(转)
    基于战斗重演的全校验---- 塔防大师PVP反外挂设计
    Unity项目开发准则
  • 原文地址:https://www.cnblogs.com/xilifeng/p/2657714.html
Copyright © 2020-2023  润新知