在的onClick XML:这需要采用了android参数调用方法 [英] Call method which needs parameters using android:onClick in XML

查看:313
本文介绍了在的onClick XML:这需要采用了android参数调用方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个按钮,它是在XML中定义。我使用安卓的onClick 来调用一个方法叫做 showMessage 。简单的方法,例如:

I have a Button and it is defined in XML. I am using android:onClick to call a method called showMessage. Simple method example:

    public void showMessage(View v){
    Log.w(TAG, "Hi");
    }

现在假设我的方法,例如需要的布尔 INT 作为参数,该怎么办是这样的:

Now suppose my method needs for example a boolean and an int as parameters, how to do something like:

安卓的onClick =showMessage(布尔isExpensive,INT钱)

推荐答案

这是不可能的,因为你没有传递参数,但可以使用标签:

It is not possible to pass parameters as you did, but you can use tags:

<Button 
    android:id="@+id/btn1"
    android:tag="false,25"
    android:onClick="showMessage"
/>

<Button 
    android:id="@+id/btn2"
    android:tag="true,50"
    android:onClick="showMessage"
/>

和在你的java:

public void showMessage(View v) {
    String tag = v.getTag().toString();
    boolean isExpensive = Boolean.parseBoolean(tag.split(",")[0]);
    int money = Integer.parseInt(tag.split(",")[1]);
    this.showMessage(isExpensive, money);
}

public void showMessage(boolean isExpensive, int money) {
    // Your codes here
}

这篇关于在的onClick XML:这需要采用了android参数调用方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆