我的应用程序背景很简洁,背景中已包含“按钮”。
我想以某种方式用边界框或矩形包围这些“按钮”,然后让该区域响应触摸事件。
我怎么能在android中这样做?
谢谢!
答案 0 :(得分:0)
只需使用任何布局和setOnClickListener为该布局包围它。
作为一个例子
<LinearLayout
android:background="#abc123"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:id="@+id/lay1">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</LinearLayout>
现在为按钮和线性布局设置单独的监听器。这将与所有屏幕一致,即填充将在任何地方固定。
答案 1 :(得分:0)
如需更多信息和帮助,请点击here
编辑:运行代码
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.but_1_but:
// do stuff for 1st button
break;
case R.id.but_2_but:
// do stuff for 2nd button
break;
}
}
答案 2 :(得分:0)
在布局中添加查看(这将是透明的,将位于所有视图组件的顶部)。并为您的View设置 OnTouchListener 。然后在预期的X,Y坐标中听取触摸事件。
答案 3 :(得分:0)
尝试并使用
Region rgn = new Region();
在此,设置应该在按钮中的边界。
并检查一个条件,如果您的点击位于此区域的x和y范围内,请执行某些操作...
参考