<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)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: a级毛片在线免费| 免费无码又爽又黄又刺激网站| 九九热久久免费视频| 亚洲成av人片一区二区三区| 亚洲熟妇无码八V在线播放| 亚洲国产成人私人影院| 亚洲最大中文字幕无码网站 | 国产av天堂亚洲国产av天堂| xxxx日本在线播放免费不卡| 亚洲免费无码在线| 国产高潮流白浆喷水免费A片 | 国产成人99久久亚洲综合精品| 国产高潮久久免费观看| 久久久综合亚洲色一区二区三区 | 韩国18福利视频免费观看| 亚洲乱亚洲乱妇无码| 日本视频免费在线| jizz18免费视频| 亚洲av无码成h人动漫无遮挡| 曰批视频免费40分钟试看天天| 国产色在线|亚洲| 国产免费资源高清小视频在线观看| 黄人成a动漫片免费网站| 久久国产成人亚洲精品影院 | 中国一级特黄的片子免费| 亚洲av不卡一区二区三区| 1000部拍拍拍18勿入免费视频软件 | 一个人看的免费观看日本视频www 一个人看的免费视频www在线高清动漫 | 拍拍拍无挡视频免费观看1000| 久久久久亚洲Av无码专| 在线a人片天堂免费观看高清 | 久久这里只精品国产免费10| 亚洲综合丁香婷婷六月香| 国产免费小视频在线观看| 成人性生交大片免费看好| 亚洲人成网站在线观看播放动漫| 成年午夜视频免费观看视频| 亚洲男人电影天堂| 国产日产成人免费视频在线观看 | 免费无码AV电影在线观看| 亚欧乱色国产精品免费视频|