在我的Android应用中,我有一些自定义视图(作为AppCompatImageView
的扩展名),在类中有onClick
方法执行一些动画。
点击视图时,它会移动到屏幕的某个点。但是,如果那里已经存在一个视图(之前已被挖掘过),我需要将其移开。如何点击一个视图来调用方法(它可以是相同的方法,并且视图将属于同一个类),对于轻敲按钮和任何(如果有)视图已经“停靠”在此位置。
这些类有onClick
方法可以正常工作:
public class CustomView extends AppCompatImageView implements View.OnClickListener {
private boolean docked;
...
@Override
public void onClick (View v) {
if (docked)
//Perform some action
else
//Perform another action
}
}
视图都是同一个类,并在主活动中的运行时创建,然后添加到布局中。
有人能建议解决这个问题的最佳方法吗?
答案 0 :(得分:0)
也许你可以使用BroadcastReceiver。在点击其他视图移动的视图时发送广播。将BroadcastReceiver类写在同一个类中。
答案 1 :(得分:0)
如果您有已经点击的视图,请在该视图上调用此方法performClick()
以调用其onClick()
方法。因此,两个视图(当前点击和之前点击的)onClick()
方法都会调用。