Android 自定义View点击事件

给自定义小图标(箭头所指)添加OnclickListener();

结果

只要点击屏幕就会响应了

刚接触Android不久,不知道哪里的问题,求大神指点。

图片说明

public class Map extends Fragment implements OnClickListener {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        View root = inflater.inflate(R.layout.map, container, false);
        FrameLayout frameLayout = (FrameLayout) root
                .findViewById(R.id.maplayout);
        /**
         * 新建一个图标
         * 
         * @author prohan
         * @param Context
         *            context int x ,int y 添加的点的左上角位置 int id 设置节点ID
         */
        final Myview myview = new Myview(this.getActivity(), 830, 880);
        myview.setOnClickListener(this);
        myview.setId(10);
        frameLayout.addView(myview);
        return root;
    }

    public void onAttach(Activity activity) {
        super.onAttach(activity);
    }

    class Myview extends View {
        public int bitmapx;
        public int bitmapy;

        public Myview(Context context, int x, int y) {
            super(context);
            this.bitmapx = x;
            this.bitmapy = y;

        }

        @Override
        protected void onDraw(Canvas canvas) {

            Paint point = new Paint();
            point.setAlpha(150);

            Bitmap bitmap = BitmapFactory.decodeResource(this.getResources(),
                    R.drawable.point);
            canvas.drawBitmap(bitmap, null, new Rect(bitmapx, bitmapy,
                    bitmapx + 60, bitmapy + 100), point);
            // canvas.drawRect(0, 0, getWidth(), getHeight(), mPaint);
            // canvas.drawBitmap(bitmap, bitmapx, bitmapy, point);

        }

    }

    // Onclick中的方法
    private void alertmessage() {
        AlertDialog alert = new AlertDialog.Builder(this.getActivity())
                .create();
        alert.setIcon(R.drawable.ic_launcher);// 设置对话框的图标
        alert.setTitle("当前站点信息:");
        alert.setMessage("XXXXXXXXXXXXXXXX");
        alert.show();

    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
        case 10:
            Toast.makeText(getActivity(), "#" + v.getId() + "#" + "8号楼监测站",
                    Toast.LENGTH_SHORT).show();
            alertmessage();
            break;

        default:
            break;
        }

    }
}

如果能告诉我如何能让myview跳动起来就最好啦

1个回答

0917Android基础自定义View的点击事件
Android 自定义View——自定义点击事件
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

是你的myview区域太大了吧
830, 880,这可不小

geshegentle
TTTjun 不不不,按我的意思,我的那个是坐标啊,view的区域不小啊。。。以830、880为左上角画一个50*100的图。。。。
接近 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Android自定义view的点击事件
package com.bwie.test.custom_textview; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import java.util.Random; public class MainActivity extends AppCompatActivity {
Android 自定义View——自定义点击事件
在前几篇博客中我们列举了如何自定义控件,接下来我们来学习下如何自定义点击事件。   每个人手机上都有通讯录,这是毫无疑问的,我们通讯录上有一个控件,在通讯录的最左边有一列从”#”到”Z”的字母,我们通过滑动或点击指定的字母来确定联系人的位置,进而找到联系人。我们这一节就通过开发这个控件,来学如何自定义控件的点击事件。通讯录列表查找控件界面绘制  首先我们需要先将控件的基本布局绘制出来,这里我们不在
Android自定义View与添加点击事件
一、新建属性在新建的module中的values文件夹下新建atts.xml声明<declare-styleable name="Topbar"> <attr name="title" format="string"/> //此处省略10000字 </declare-styleable>二、实现自己的View可以继承RelativeLayout创建构造方法private String t
自定义View添加点击事件
最近一直在学习自定义控件 越学习越觉得自定义控件厉害。也越发的想掌握其原理。 虽然GitHub上各种各样的轮子都有,但是万一没有呢? 依靠轮子是不靠谱的!!! 自己掌握原理,才是最靠谱的!!! 当我用自定义控件画出来想要的效果时,突发奇想。 点了一下,发现没反应。于是想设置监听事件。 我的画的控件充满屏幕,我只是想点击局部。但是直接设置监听的话,监听的是整个控件。 一时间有
自定义view点击事件的接口回调
自定义view点击事件的接口回调
自定义view随机数点击事件
public class MyView extends View implements View.OnClickListener{ int[] colors = new int[]{ Color.RED,Color.YELLOW,Color.GREEN }; int[] colores = new int[]{ Color.BLU
android actionbar自定义View并添加点击事件
LoginActivity.javapublic class LoginActivity extends AppCompatActivity { public static final String TAG = "ZCN_LoginActivity"; private ImageView iv; @Override protected void onCreate(Bun
android自定义View长按和点击事件的实现
期末的课程设计要做一个Android端的扫雷游戏,游戏地图使用自定义View画出的一个个方格实现,点击表示打开方格,长按表示标记方格,于是就有了监听自定义View的长按和点击事件的需求。 虽然系统提供了OnClickListener和OnLongClickListener用来监听长按和点击事件,但是我们需要知道点击和长按的位置,显然这两个接口并不能满足要求,所以我决定使用重写自定义View的onT...
Android View的点击事件与回调函数
回调函数 最简单的回调函数场景:有A类和B类,A类的C方法,B类的D方法 A需要调用B类的D方法,而B类的D方法又需要调用A类的C方法,也就是相互调用。 简单的回调函数使用可以参考如下代码 /** * 回调函数 */ public interface Callback { void meet(ScheduleTable schedule); } /** Boss类 实现CallBack...
Android View的点击事件分发机制
三个重要的方法: dispatchTouchEvent(MotionEvent ev):用来进行事件的分发 onInterceptTouchEvent(MotionEvent ev):用来进行事件的拦截,在dispatchTouchEvent()中调用,需要注意的是View没有提供该方法 onTouchEvent(MotionEvent ev):用来处理点击事件,在dispatchTouch...
Android View 点击事件的分发机制
最近一直在研究android的源码,理解view点击事件的分发机制,对android开发有很大的帮助。本文首先,介绍MotionEvent,然后介绍创建activity时,view是怎么创建的,最后从viewgroup 和view 出发介绍点击事件的分发机制。MotionEvent 有三种状态 Action_Down :手指放接触屏幕 Action_Move :手指在屏幕上面移动 Action
Android View的点击事件无效
Android View的点击事件无效 解决办法 背景:有时候一个控件,即设置了点击事件监听器setOnClickListener(this);,又设置了setOnTouchListener(this); 这个时候点击事件就会无效. 解决方案:当即需要监听点击事件 又需要监听触摸事件 onTouch()必须返回false,否则点击事件无效 public boolean onTouch(Vi...
Android view点击事件
import android.app.Activity; import android.os.Bundle; import android.view.KeyEvent; import android.view.MotionEvent; import android.view.View; import android.view.View.OnClickListener; import a
Android:View点击事件
创建内部类: 创建一个内部类实现OnClickListener接口并重写onClick()方法,在方法中写入点击事件的逻辑。 内部类写完后需要为按钮设置setOnClickListener(Listener listener)属性,在参数中传入之前创建好内部类对象即可,这样当点击按钮时就会自动触发内部类中的onClick()方法调用事件逻辑。 这里比较重要的一点,要为按钮设置点击事件前要先获
自定义VIEW中区域点击事件
自定义VIEW中通常要有响应事件的部分,做法是根据点击区域来响应。 上代码:public class MyView extends View { private final static String TAG = MyView.class.getSimpleName();private Paint xLinePaint; private Paint yLinePaint; private
0917Android基础自定义View的点击事件
TouchEvent  TouchEvent 是一类描述手指在触摸平面(触摸屏、触摸板等)的状态变化的事件。这类事件用于描述一个或多个触点,使开发者可以检测触点的移动,触点的增加和减少,等等。跟touch事件相关的3个方法: public boolean dispatchTouchEvent(MotionEvent ev); //用来分派event public boolean onInte
自定义view中控件的点击事件
1:自定义一个view,(本案例只实现一个button按钮的点击事件) package com.bawei.study.view; import android.content.Context; import android.support.annotation.Nullable; import android.util.AttributeSet; import android.view.
自定义组合控件,自定义View,接口点击事件
 先写自定义组合控件的布局LoginView 继承自LinearLayout public class LoginViewextends LinearLayoutimplements View.OnClickListener{ private Context _context; public LoginView(Context context) {
自定义view系列(3)--给自定义View添加点击事件
这几天一直在看《android开发艺术探索》和《android群英传》中关于自定义view的章节,结合着网上大神的一些心得分享,感觉自定义view这一块受益匪浅,这里做个心得笔记,主要记录一下view与用户交互的一些知识。 自定义view与用户交互用的最多的就是单击事件,其次的还有双击事件、长按事件、滑动事件等,所以就需要做好view的事件监听。 如果我们继承了View,也绘制好了控件,但是不
Android中父View和子view的点击事件
android中的事件类型分为按键事件和屏幕触摸事件,Touch事件是屏幕触摸事件的基础事件,有必要对它进行深入的了解。  一个最简单的屏幕触摸动作触发了一系列Touch事件:ACTION_DOWN-&amp;gt;ACTION_MOVE-&amp;gt;ACTION_MOVE-&amp;gt;ACTION_MOVE...-&amp;gt;ACTION_MOVE-&amp;gt;ACTION_UP 当屏幕中包含一个ViewGro...
Android——View对点击事件的处理
上一篇中,分析了View事件分发机制,View事件的分发最终都是到View这里来处理,所以,这篇主要就是看看View对点击事件是怎么处理的。 从上篇中,我们知道,最终调用的是View.dispatchTouchEvent(); /** * Pass the touch screen motion event down to the target view, or this
Android -自定义view(三)自定义view的流程
自定义View的过程 1、先分析需要的自定义属性,编写,在构造函数中获取 2、重写测量方法,onMeasure(),决定View占据的空间大小 3、绘制View(Draw)自定义ViewGroup的过程 1、onMeasure测量自己及其子View的大小 2、onLayout布局,决定子View的显示 3、手势和用户的交互 onTouchEvent onIntercept
Android 自定义View——自定义View控件
Android给我们提供了大量的View控件,但这还是远远满足不了我们的要求,有时候开发所需要的控件形式是在Android提供的控件中是不存在,这就需要我们自己去定义一个。那么如何自定义控件?   学习自定义控件,首先要先掌握Canvas类的使用。   Canvas  Canvas, 我们称之为“画布“,主要适用于绘制View的。 Canvas中提供了大量绘制图形的方法:绘制扇形: drawA
【自定义View系列】android自定义View概述
自定义view是一个综合的技术体系,本说明文档不去分析一个个具体的自定义view的实现,因为自定义view五花八门,是不可能全部分析一遍的。虽然我们不能把自定义view都分析一遍,但是我们能够提取出一种思想,而面对陌生的自定义view时,运用这个思想去快速解决问题。这种思想的描述如下:首先要掌握基本功,比如view的弹性滑动、滑动冲突、绘制原理等等,这些东西都是自定义view所必须的,尤其是那些看起
Android自定义View 之 View的测量
讲解了自定义View的第一步 View的测量,非常简单易懂,没有深入源码分析~
Android 自定义View之View的绘制
讲解了如何使用Canvas类和Paint类来进行Android的绘制
android 自定义view 温度控制view
  这个自定义视图是解决用户可以随意设置地暖温度而设置的。看起来很实(JI)用(雷),操作也很简单。作为码农,我们只管专心解决问题,我相信没有人会喜欢温度变来变去,就像上了青藏高原,我只想把核心的原理讲解一下。需要实现的功能:1。画表格 - 温度时间表2.手指在表格上按下,添加一个温度时间点,并把相邻的点连接起来3.已经画好的点可以再次拖动,拖动过程时时显示温度时间,每两个小时只能设置一个温度点4...
Android自定义view之(刻度尺view)
前言: 最近一直在做h5,感觉学的东西多了还真有点混淆了,再来看anroid的时候,觉得有点点陌生了,难道真的是鱼与熊掌不可兼得吗? 好吧,也罢~ 在技术群中看到一个小伙伴有一个这样的需求,所以在不是很忙的情况下试着去实现了一下,感觉还不错!~~先上一张最终的结果图(我这样算不算侵权啊,小伙伴产品好不容易设计出来,就被我用啦! 哈哈~~~不管了,反正android本身都是开源的):效果还是不错的啊
android自定义view之---组合view
博客讲解地址http://blog.csdn.net/wingichoy/article/details/47146855
Android自定义view:绘制view
零 零点一 小德我这几天都在做一个“大工程”,几天没来。那今天就来分享一个好玩的小项目:自定义View,在view中绘制一个哆啦A梦。 我在主页看到有人用JS画了个蓝胖子,由于小德我很喜欢,所以我在Android中也画了一个,也可以练习一下View中的绘制方法。 零点一点一 先看看我的成果: 一 首先我们要自定义一个类继承View,然后重载关于绘制的方法ondraw。 public clas...
android自定义view之自定义容器
1、容器中的控件高度相同,一行一行往下放,一个控件放不下时,则换行 package com.example.huanghaiyan.mjtestactivity; import android.content.Context; import android.util.AttributeSet; import android.util.Log; import android.view.View;
Android 自定义View——自定义ProgressBar
Android中给我们提供了多个样式的ProgressBar,SeekingBar,RatingBaar等进度条,但是我们这些样式都满足不了我们的要求,这时我们就可以使用自定义View来定义我们自己想要的形式的进度条。   这里讲解三种样式的进度条,由于博主还米有学习过动画,所以这里不添加动画效果。想要学习自定义控件的可以先参考这篇文章>《Android 自定义View——自定义View控件 》。
Android自定义View之自定义开关按钮
一、效果展示二、相关链接Android自定义控件系列二:自定义开关按钮(一)Android自定义控件系列三:自定义开关按钮(二)Android自定义控件系列三:自定义开关按钮(三)— 自定义属性三、自定义View的具体步骤1、首先需要写一个类来继承自View(或者View的子类) 2、需要得到view的对象(并初始化变量),那么需要重写构造方法,其中一参的构造方法用于new,二参的构造方法用于xm
Android自定义View——自定义ViewPager
本篇内容: 第一部分:自定义ViewGroup的使用,手势识别器和Scroller滑动 第二部分:处理滑动监听,处理滑动冲突,增加ViewPager的指示器 基础概念: 常见的滑动冲突:外部滑动方向和内部滑动方向不一致、外部滑动方向和内部滑动方向一致。 我们自定义的ViewPager如果在其中一页中存在ListView,那么就需要解决滑动冲突的问题。 由于系统自
android自定义view之自定义RatingBar
问题描述: 很多时候我们会遇到写自定义评分条,也就是自定义RatingBar的需求,下面写一个比较复杂的自定义view 解决方案: 先上图 明显第一个和第二个都是自定义view,只是写法不一样。第三个是系统的控件拿出来比较。下面是具体分析。 第一个的写法: 想法是直接写从第一个星星画到最后一个星星,在这里的核心代码是 protected synchronized void onDraw
android 自定义View — 自定义组合控件
android 自定义View — 自定义组合控件
android自定义view之自定义imageview
问题描述 需要自定义一个圆形imageview或者带有椭圆角的imageview,这个时候我们就自定义它。 解决方案 先上图 声明:代码下载github https://github.com/pungrue26/SelectableRoundedImageView imageview变换形状,本质上是将背景图片变化形状,加载到imageview,所以我们的重点是怎样写各种形状的drawa
android自定义view自定义buttonDemo
android使用自定义view和自定义button实现的小demo,可以实现button的点击变换背景等功能
android自定义view(自定义数字键盘)
序言:在上周的项目中,需要做一个密码锁的功能,然后密码下面还得有键盘,就类似支付宝支付的时候那样: 当然了,我们项目的需求简单点,纯数字的就可以了,然后上周就百度了自定义键盘,随便找了一个修改修改就用到项目中去了。 多谢这位简友:[Android] 自定义输入支付密码的软键盘 今天自己抽空写了一个自定义View的键盘控件,下面跟大家分享一下: ####思路: 1、布局: (1)、宫格:我们可...
android 自定义宽高比的自定义View
这里以16:9为例,定好宽,高自适应 public class View_16_9 extends View { public View_16_9(Context context) { super(context); } public View_16_9(Context context, @Nullable AttributeSet attrs) {...
相关热词 c#检测非法字符 c#双屏截图 c#中怎么关闭线程 c# 显示服务器上的图片 api嵌入窗口 c# c# 控制网页 c# encrypt c#微信网页版登录 c# login 居中 c# 考试软件