说明:
我有一个名为sum(View v)
的onClick函数。如何将参数传递给提到的函数?我尝试了sum(View v,int a,int b)
,但是一旦执行此操作,Compiler就会将错误抛出为"Corresponding method handler 'public void sum(android.view.View)' not found"
。首先,请告诉我,是否可以通过与我相同的方式将参数传递给on click函数,或者可以通过其他方式完成此操作。
所需的Java代码:
public void sum(view v,int a,int b){
int c;
c =a+b;
}
在论坛上找到了一些相关问题,但对答案不满意。请我提供更多(如果需要)。谢谢。
答案 0 :(得分:0)
如何将参数传递给提到的函数?
通常,您不会。您可以在布局中使用数据绑定lambda表达式,但这是一个相对高级的主题。
相反,您可以:
sum(View v)
方法重命名为onSumClicked(View v)
,并在使用该方法进行匹配的任何位置进行调整onSumClicked(View v)
用您想要的值调用您的sum(view v,int a,int b)
答案 1 :(得分:0)
如果您已经在xml中对按钮的lookFor
属性(例如,它是一个按钮)进行了硬编码,例如:
onClick
然后sum方法必须具有以下签名:
android:onClick="sum"
public void sum(View v)
仅sum()
不允许使用其他参数(即使应用程序将编译,但单击按钮时应用程序将崩溃)。
如果要在View v
中使用这2个整数变量,则必须在类级别上声明它们。
编辑,因此在您的活动类中声明2个变量
sum()
您可以在此类中的任何位置设置它们的值,然后单击int a = 0;
int b = 0;
内的按钮,即可访问它们。