Android 从扩展视图将值发送到Main
我有这样一个活动,检测多点触摸,并统计设备被点击3次以上的每个实例。我想做的是检查一下Main,看看它是否达到了设置的限制 主要活动Android 从扩展视图将值发送到Main,android,view,multi-touch,Android,View,Multi Touch,我有这样一个活动,检测多点触摸,并统计设备被点击3次以上的每个实例。我想做的是检查一下Main,看看它是否达到了设置的限制 主要活动 package com.test.multitouch; import android.app.Activity; import android.os.Bundle; public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstan
package com.test.multitouch;
import android.app.Activity;
import android.os.Bundle;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
// DETECT more than 20 counts here and display a toast
}
扩展视图的自定义视图
您的自定义视图具有对其附加到的上下文的引用。我假设此视图与您尝试引用的活动在同一活动中运行。您可以按如下方式获取对活动的引用:
MainActivity mainActivity = (MainActivity) custom_view.this.getContext();
我还假设你是从你的监听器内部调用这个。您需要引用this来访问outterclass实例,否则将引用onTouchListener类的实例。另外,您应该将类名大写,这样您就可以从大写中识别我们是指实例还是指类定义
一旦有了引用,就可以调用主活动上的某些函数来更新它
mainActivity.callSomeFunction();
当activity引用作为上下文参数传递到视图中时,是什么阻止了您使用该引用对其调用方法并发送所需的值?我对android相当陌生,我不明白您在告诉我什么?您有什么可以参考的示例吗。我很难理解这一点,请参见链接,例如从内部类引用外部类实例的示例。正如我所说,您的onTouchListener是一个内部类,如果您想从内部类回调mainActivity,您需要获取outter实例,它具有函数getContext。outter类绑定到活动,您可以从getContext获取引用。
mainActivity.callSomeFunction();