<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    張慧的博客

    張慧的博客

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      45 Posts :: 0 Stories :: 24 Comments :: 0 Trackbacks

    經常用到多個透明圖片層疊,但又需要獲取不同圖片的點擊事件,本文實現圖片透明區域穿透點擊事件。

    效果圖:

     歡迎轉載請說明轉自:http://blog.csdn.net/aminfo/article/details/7872748

    一、先上圖片,這2張圖片尺寸是一樣的,放到drawable目錄下:

    圖1:transparent.png

     

    圖2:transparent2.png

     

    二、上布局文件,test.xml

    <?xml version="1.0" encoding="utf-8"?>
    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
       android:layout_width
    ="fill_parent"
       android:layout_height
    ="fill_parent"
       android:orientation
    ="vertical"
       android:gravity
    ="center"
       android:id
    ="@+id/mainLayout">
       
        <ImageView android:id="@+id/ImageView01"
            android:layout_width
    ="wrap_content"
            android:layout_height
    ="wrap_content"
            android:src
    ="@drawable/transparent"/>
        
        <ImageView android:id="@+id/ImageView02"
            android:layout_width
    ="wrap_content"
            android:layout_height
    ="wrap_content"
            android:src
    ="@drawable/transparent2"/>    
              
    </FrameLayout>

    package org.shuxiang.test;

    import android.app.Activity;
    import android.graphics.Bitmap;
    import android.graphics.drawable.BitmapDrawable;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.MotionEvent;
    import android.view.View;
    import android.view.Window;
    import android.view.View.OnClickListener;
    import android.view.View.OnTouchListener;
    import android.widget.ImageView;

    public class MainActivity extends Activity
    {
        private ImageView iv1;
        private ImageView iv2;
        private Bitmap bitmap1, bitmap2;
        private boolean iv1Transparent = false;
        private boolean iv2Transparent = false;

        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            requestWindowFeature(Window.FEATURE_NO_TITLE);
            setContentView(R.layout.test);

            iv1 = (ImageView) findViewById(R.id.ImageView01);
            iv2 = (ImageView) findViewById(R.id.ImageView02);
            bitmap1 = ((BitmapDrawable) (iv1.getDrawable())).getBitmap();
            bitmap2 = ((BitmapDrawable) (iv2.getDrawable())).getBitmap();
            
            iv1.setOnClickListener(new OnClickListener(){
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    if(iv1Transparent)
                    {
                        Log.i("test", "圖1透明區域");
                    }
                    else
                    {
                        Log.i("test", "圖1點擊");                    
                    }
                }
                
            });
            
            iv1.setOnTouchListener(new OnTouchListener()
            {
                @Override
                public boolean onTouch(View arg0, MotionEvent arg1) 
                {
                    // TODO Auto-generated method stub
                    if(bitmap1.getPixel((int)(arg1.getX()),((int)arg1.getY()))==0)
                    {
                        Log.i("test", "圖1透明區域");
                        iv1Transparent = true;    //透明區域設置true                    
                    }
                    else
                    {
                        Log.i("test", "圖1實體區域");
                        iv1Transparent = false;
                    }
                    return false;
                }            
            });
            
            iv2.setOnClickListener(new OnClickListener()
            {
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    if(iv2Transparent)
                    {
                        Log.i("test", "圖2透明區域");
                    }
                    else
                    {
                        Log.i("test", "圖2點擊");                    
                    }
                }
                
            });
            
            iv2.setOnTouchListener(new OnTouchListener()
            {
                @Override
                public boolean onTouch(View v, MotionEvent event) {
                    // TODO Auto-generated method stub
                    if(bitmap2.getPixel((int)(event.getX()),((int)event.getY()))==0)
                    {
                        Log.i("test", "圖2透明區域");
                        iv2Transparent = true;    //透明區域設置true
                        iv1.dispatchTouchEvent(event);
                    }
                    else
                    {
                        Log.i("test", "圖2實體區域");
                        iv2Transparent = false;
                    }
                    return false;
                }
            });
        }
    }


    posted on 2012-08-16 22:28 張慧 閱讀(3378) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 最近2019免费中文字幕视频三| 2022国内精品免费福利视频| 4hu四虎最新免费地址| 国产亚洲精品xxx| 久久美女网站免费| 亚洲黄色免费在线观看| 亚洲高清中文字幕免费| 亚洲中文字幕一二三四区苍井空 | 黄页免费在线观看| 亚洲最大成人网色| 日本精品人妻无码免费大全 | 国产91精品一区二区麻豆亚洲 | 亚洲国产成人无码av在线播放| 免费成人福利视频| 亚洲乱理伦片在线观看中字| 国产一区二区三区在线观看免费| 免费的黄网站男人的天堂| 亚洲色欲久久久综合网东京热| 另类免费视频一区二区在线观看| 亚洲色图.com| 国产一区二区三区在线观看免费| 中国毛片免费观看| 亚洲欧洲国产视频| 韩国二级毛片免费播放| www成人免费观看网站| 亚洲嫩模在线观看| 大学生一级特黄的免费大片视频| 特级毛片免费播放| 亚洲一区二区成人| 国产人妖ts在线观看免费视频| 亚洲一级片免费看| 亚洲人成在线精品| 国外亚洲成AV人片在线观看| 18女人水真多免费高清毛片| 国产精品亚洲专区无码WEB| 在线亚洲97se亚洲综合在线| 曰批视频免费30分钟成人| 水蜜桃视频在线观看免费| 亚洲精品自在线拍| 精品亚洲一区二区三区在线观看| 久久国产精品免费专区|