我试图在点击时更改ListView中的文本内容。以下是我将计数增加1
的代码public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
TextView content = (TextView)findViewById(R.id.txt);
String currentText = (String)content.getText();
System.out.println(currentText.length());
int counter=0;
String a_letter = Character.toString(currentText.charAt(currentText.length() - 1));
System.out.println(a_letter);
counter = Integer.parseInt(a_letter);
counter = counter+1;
currentText = currentText.substring(0,currentText.length()-1);
currentText = currentText + Integer.toString(counter);
content.setText(currentText);
}
问题是,当我点击“Caps x1”时,它必须增加Caps的计数器,但它会增加Bricks的计数器。 错误是什么?
答案 0 :(得分:0)
您应该按view.findViewByid(int id)
方法找到内容视图,因为我看到fidnViewById
方法是默认的活动。要在视图中查找特定项目,您需要执行view.FindViewbyId()
。例如,在你的情况下,
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
TextView content = (TextView)view.findViewById(R.id.txt);
String currentText = (String)content.getText();
System.out.println(currentText.length());
int counter=0;
String a_letter = Character.toString(currentText.charAt(currentText.length() - 1));
System.out.println(a_letter);
counter = Integer.parseInt(a_letter);
counter = counter+1;
currentText = currentText.substring(0,currentText.length()-1);
currentText = currentText + Integer.toString(counter);
content.setText(currentText);
}
答案 1 :(得分:0)
你应该使用一些模型。让我们说一个项目列表,其中项目的名称和数量。然后点击你应该得到这个项目的位置。 增加模型中的数量,并在适配器上调用notifyDataSetChanged()。