首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    android判断点击位置是否在扇形区域内

    在做仿支付宝记账本界面效果时遇到了一个问题,在环形图中点击每一个环是会显示出不同的内容,因此,必须判断用户到底点击了哪个圆环,网上查阅资料说可以根据颜色来判断,但是心里总是觉得根据颜色不是很好的解决方案...绘制扇形 要判断点击的位置是否是在扇形区域内,首先要绘制扇形,绘制扇形的方法可以使用canvas.drawArc()方法。...getPaddingRight()) / 2; mCenterCircleY = (getHeight() + getPaddingTop() - getPaddingBottom()) / 2; } 获取点击位置...,判断是否在扇形内的方法如下: public boolean onTouchEvent(MotionEvent event) { float x; float y; switch...TAG, "onTouchEvent: b: "+b +" x: "+ x+" y: "+y); break; } return true; } 这里要注意的是:获取点击位置后

    1.3K20

    Android如何判断当前点击位置是否在圆的内部

    我们都知道,一个圆形的ImageView控件(本项目中使用的圆形控件是github上的),其实所占的区域还是正方形区域,只是显示内容为圆形,当我们给ImageView设置触摸事件时,没有显示区域也会相应点击事件...,而我们可以通过计算当前点击的位置来判断ImageView是否相应触摸事件。...如上图所示,当点击圆之内拖动时,圆跟着移动,但是点击圆之外拖动时,圆没有任何反应。...x坐标与圆心的x坐标的距离 int distanceX = Math.abs(vCenterX-lastX); //点击位置y坐标与圆心的y坐标的距离 int distanceY =...Math.pow(distanceY,2)); //如果点击位置与圆心的距离大于圆的半径,证明点击位置没有在圆内 if(distanceZ r){ return false;

    2.2K20

    Android 点击通知栏消息打开activity,并判断app是否运行

    对于第二种情况,我参照了很多app的做法,现总结为以下两种: 点击通知栏消息打开activity按下返回键后判断app是否启动,如果没有启动就要启动app; 点击通知栏消息时判断app是否正在前台运行,...private int isNoticeOpen = 0;// 是否是点击消息通知跳转进来的 ``` ```java @Override public void onCreate(Bundle savedInstanceState...= null) { // 判断是否是消息通知点击跳转进行的 try{ isNoticeOpen = Integer.valueOf(bun.getString("NOTICE"));...,但是这里只能用MainActivity是否存在任务栈里面判断,因为当你点击通知消息跳转到某个activity的时候,任务栈里该activity就处于栈顶了,而栈顶的activity的包名就是该应用的包名.../** * 判断是否是点击消息通知栏跳转过来的 * * @param mainActivity * 主页 */

    3.3K10
    领券