Мне нужно добавить кнопки внутри попадания.
Это представление, в основном, где пользователь ищет в базе данных других людей и отправляет запрос на добавление в друзья. Каждый удар имеет имя пользователя и кнопку, чтобы добавить этого человека в друзья.
Кнопки addfriend и addstory работают ..... НО странным образом. Я должен сначала нажать на сам хит, затем нажмите добавить в друзья. И в других хитах кнопки не реагируют. (работает только верхний)
Есть идеи о том, что происходит?
hits.setOnItemClickListener(new ItemClickSupport.OnItemClickListener() {
@Override
public void onItemClick(RecyclerView recyclerView, int position, View v) {
addicon = findViewById(R.id.addFriend);
addstory = findViewById(R.id.addStory2);
JSONObject hit = hits.get(position);
// Do something with the hit
addicon.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Drawable[] layers = new Drawable[2];
layers[0] = getResources().getDrawable(R.drawable.add_friend_icon_final);
layers[1] = getResources().getDrawable(R.drawable.waving_hand);
TransitionDrawable transition = new TransitionDrawable(layers);
transition.setCrossFadeEnabled(true);
addicon.setImageDrawable(transition);
transition.startTransition(500 /*animation duration*/);
try{
newfriendid = hit.getString("objectID");
newfriend = hit.getString("username");
mDatabase.child("friends").child(mCurrent_user_id).child(newfriendid).setValue(newfriend);
}catch(JSONException e){
// Recovery
}
}
});
addstory.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
Intent i = new Intent(DiscoverActivity.this, ContactsActivity.class);
startActivity(i);
}
});
Intent i = new Intent(DiscoverActivity.this, FriendProfile.class);
startActivity(i);
}
});
}
@Override
protected void onDestroy() {
searcher.destroy();
super.onDestroy();
}