gpt4 book ai didi

java - 检测触摸了哪个复选框?数组 Java Android Studio

转载 作者:搜寻专家 更新时间:2023-11-01 09:31:51 25 4
gpt4 key购买 nike

我有一个 CheckBox ArrayList 设置,但我怎么知道哪个被触摸了?更具体地说,我只是想在已触摸复选框的 ArrayList 中获取“i”的整数值。有任何想法吗?

@Override
public void sendData(String userText, String userNotes) {

//we can create the saves here as well....

LinearLayout ll = (LinearLayout)findViewById(R.id.myLayout);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
CheckBox tv = new CheckBox(getApplicationContext());
tv.setTextSize(20);
tv.setText(userText + " \n" + date);
tv.setLayoutParams(lp);
checkBoxArrayList.add(tv);

//Handles if checkbox is pressed down, and set id for each check box
for(int i = 0; i < checkBoxArrayList.size(); i ++){

checkBoxArrayList.get(i).setId(i);

checkBoxArrayList.get(i).setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {

switch(motionEvent.getAction()) {

case MotionEvent.ACTION_DOWN:
//here we will simply open the files unless held down

//when held down
view.postDelayed(runnable, 1250);
break;

}
return false;
}
});
}

//add checkbox passed in to the layout
ll.addView(tv);
}

多亏了@rex,我才有了一个全局私有(private)整数 checkboxPopupCheck。我将它添加到案例 MotionEvent.ACTION_DOWN 中。我现在可以使用这个整数来满足我的需要。

checkboxPopupCheck = view.getId();

最佳答案

您的 onTouch 方法有两个参数,第一个是被触摸的 View 。

所以做一个简单的 view.getId() 会返回你设置的相同 id

checkBoxArrayList.get(i).setId(i);

这是ArrayList的整数值

关于java - 检测触摸了哪个复选框?数组 Java Android Studio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46520092/

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