gpt4 book ai didi

java - 使用指向单个方法的按钮区分单击了android按钮数组中的哪个android按钮

转载 作者:行者123 更新时间:2023-11-29 21:30:44 25 4
gpt4 key购买 nike

从这张图片中可以看出,我以键盘样式方式设置了多个按钮。我在 xml 中将每个按钮的 onClick 指向我的 btnKeyPress 方法。我计划为此方法设置一个开关/案例,但想知道 v.getId 是否是区分按下哪个按钮的非常传统的方法,并且想知道是否有更好的方法。我主要担心无论应用程序在哪部手机上运行,​​v.getId 是否会根据我的日志更改或保持不变。

screenshot

例如:这是我的 Space 和 Backspace 键的 XML 属性

        <Button
android:id="@+id/btnKeySpace"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="25"
android:onClick="btnKeyPress"
android:text="Space" />

<Button
android:id="@+id/btnKeyBackspace"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="75"
android:onClick="btnKeyPress"
android:text="Bkspc" />

这里是被调用的

public void btnKeyPress(View v){
System.out.println(v.getId());
}

最佳答案

v.getId() 将始终返回布局 xml 中设置的 android:id。所以是的,如果你用它来识别你的按钮,你就不会有问题。-

switch (v.getId()) {
case R.id.btnKeySpace:
break;
case R.id.btnKeyBackspace:
break;
// ...
}

关于java - 使用指向单个方法的按钮区分单击了android按钮数组中的哪个android按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19617192/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com