【问题标题】:How to touch Android buttons?如何触摸Android按钮?
【发布时间】:2016-12-30 12:20:37
【问题描述】:

我有三个按钮按钮 a 和 b , c 。我想触摸图片中的三个按钮。我是 Android 的新教育,请帮助我。谢谢

enter image description here

【问题讨论】:

  • 你想同时点击三个?
  • 这是滑动操作吗?
  • 是的,我需要触摸按钮 a 到按钮 c
  • 这个问题难吗?

标签: android button imagebutton


【解决方案1】:
  • 创建布局
  • 为您的布局添加视图
  • 将 setOnTouchListener 设置为您的布局
  • 使用以下内容覆盖 onTouch 方法:

    public boolean onTouch(View v, MotionEvent event) 
    {
       LinearLayout layout = (LinearLayout)v;
    
        for(int i =0; i< layout.getChildCount(); i++)
        {
    
            View view = layout.getChildAt(i);
            Rect outRect = new Rect(view.getLeft(), view.getTop(), view.getRight(), view.getBottom());
            if(outRect.contains((int)event.getX(), (int)event.getY()))
            {
                   /* Write code here to maintain all three buttons toched state, and if all bottons state are present generate Toast.              
            }
        }
    }
    

所以,要使上述代码正常工作,请在 onCreate 中执行此操作,

onCreate(Bundle..){
b1.setOnTouchListener(this);
b2.setOnTouchListener(this);
b3.setOnTouchListener(this);
}

然后,每当触摸按钮时,onTouch() 将被覆盖,现在编写您的逻辑以保持触摸,并记住在一段时间内清除状态,这样用户就不能继续触摸第一个和第二个按钮时的 3 个按钮状态已经存在。

之后,如果所有按钮状态都可用(这意味着用户滑动时所有按钮都被触摸),那么您就可以生成 toast。

如果您对建议的方法有任何疑问,请随时询问

【讨论】:

  • 当我触摸一个按钮时,应用程序出现错误。我无法触摸三个按钮 我可以触摸一个按钮。我想触摸三个一键式按钮
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-16
  • 2016-10-13
  • 2016-10-30
  • 1970-01-01
  • 1970-01-01
  • 2021-02-18
相关资源
最近更新 更多