Ich weiß, dass ein listview in android seine Elemente recycelt und in meinem Fall recycelt die listview sie, wenn Sie nach unten scrollen.setText in listView ändert sich ständig, wenn Sie nach unten scrollen, wegen recycle
Ich versuche, einen Feed zu machen, der mich einen Beitrag "Gefällt mir" lässt.
Hier ist mein Code:
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
final HomeFeedHolder homeFeedHolder;
if (inflater == null)
inflater = (LayoutInflater) activity
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
convertView = inflater.inflate(R.layout.home_feed_item, null);
homeFeedHolder = new HomeFeedHolder();
homeFeedHolder.tvHomeFeedLike = (TextView) convertView.findViewById(R.id.tvHomeFeedLike);
convertView.setTag(homeFeedHolder);
} else {
homeFeedHolder = (HomeFeedHolder) convertView.getTag();
}
homeFeedHolder.tvHomeFeedLike.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (homeFeedHolder.tvHomeFeedLike.getText().toString().equals("Like")) {
HomeFeedModel homeFeedModel = (HomeFeedModel) getItem(position);
int pid2 = item.getId();
String pid = Integer.toString(pid2);
HomeFeedLikePost homeFeedLikePost = new HomeFeedLikePost(position);
homeFeedLikePost.execute(pid);
homeFeedHolder.tvHomeFeedLike.setText("Unlike");
}
}
});
}
Wie Sie sehen können, ich nenne setText ("Im Gegensatz zu"), nachdem die tvHomeFeedLike gedrückt wird. Es funktioniert perfekt, aber wenn ich nach unten scrolle und die Listenansicht recycelt wird, wechselt das "Gefällt mir" zu einem anderen Beitrag. Wie kann ich es so machen, dass es per Post versandt wird?
EDIT: Ich bin auch mit Volley
Was ist "isLike()" ? – johnjay22113
wie ist ein boolean, so sollte der Getter sein isLike() anstelle von getLike() –
Ich glaube nicht, dass Sie meine Frage bekommen ... – johnjay22113