点击后,我想在可点击的按钮中更新文字。
我有一个喜欢产品的按钮,它的文字显示该产品有多少喜欢。
<Button
android:id="@+id/like"
android:text= "@string/like"
android:drawableTop="@drawable/like"/>
<string name="like">Likes: </string>
因此,在我的onClick()
方法中,我使用like.setText("Likes: " + product.getLikes());
来更新文字:
Button like = (Button) v.findViewById(R.id.like);
like.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
like(product);
like.setText("Likes: " + product.getLikes());
}
});
like()
方法确实有效 - 我查了一下。方法product.getLikes()
返回正确的值。
但是按钮保持不变。我无法弄清楚问题是什么。
更新: 我注意到,当我向下滚动到其他项目并再次向上时,文本会自动更新....
答案 0 :(得分:-1)
试试这个:
String mlikes= product.getLikes().toString();
like.setText("Likes: " + mlikes);`
答案 1 :(得分:-1)
试试这个。
final Button btn = (Button)findViewById(R.id.btn);
final Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
btn.setText("new text");
}
};
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
handler.sendEmptyMessage(0);
}
});