با این که تاپیک خیلی قدیمی هست و چون این مشکل دوستمون هم مثل من هستش و هنوز رفع نشده در ادامه همین تاپیک سوال رو مطرح میکنم
دوستان برای حل این مشکل باید چیکار کرد ؟ این دستور رو داخل کلاس اداپتور نوشتم.اینم کل کدهای کلاس اداپتور :
import android.content.Context;
import android.speech.tts.TextToSpeech;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
import java.util.List;
import java.util.Locale;
import io.github.meness.Library.Utils.IntentUtility;
public class adapter extends RecyclerView.Adapter<adapter.db_viewholder> {
List<civil> dic;
Context mContext;
public adapter(List<civil> dic, Context mContext) {
this.dic = dic;
this.mContext = mContext;
}
@NonNull
@Override
public db_viewholder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R .layout.list_items,parent,false);
return new db_viewholder(view);
}
@Override
public void onBindViewHolder(@NonNull db_viewholder holder,final int position) {
civil civil = dic.get(position);
holder.txt_word.setText(civil.getWord());
holder.txt_meaning.setText(civil.getMeaning());
final String word = holder.txt_word.getText().toString();
holder.btn_volume.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
TextToSpeech tts = new TextToSpeech(mContext,mContext);
tts.setLanguage(Locale.US);
tts.speak(word, TextToSpeech.QUEUE_ADD, null);
}
});
}
@Override
public int getItemCount() {
return dic.size();
}
public class db_viewholder extends RecyclerView.ViewHolder {
public TextView txt_word;
public TextView txt_meaning;
public RelativeLayout relativeLayout;
public Button btn_share;
public Button btn_copy;
public Button btn_volume;
public db_viewholder(View itemView) {
super(itemView);
txt_word=itemView.findViewById(R.id.txt_word);
txt_meaning=itemView.findViewById(R.id.txt_meaning );
txt_word.setTypeface(font.face);
txt_meaning.setTypeface(font.face);
relativeLayout=itemView.findViewById(R.id.relative Layout);
btn_share=itemView.findViewById(R.id.btn_share);
btn_copy=itemView.findViewById(R.id.btn_copy);
btn_volume=itemView.findViewById(R.id.btn_volume);
}
}
public void clear() {
final int size = dic.size();
dic.clear();
notifyItemRangeRemoved(0, size);
}
}