java—如何在另一个活动中将值从textview发送到recyclerview

ig9co6j1  于 2021-07-06  发布在  Java
关注(0)|答案(2)|浏览(257)

我正在尝试将一个值从textview发送到recyclerview(在另一个活动中)。
我想使用onclickyes方法将每个单词发送到另一个活动中的recyclerview。

  1. public class MainActivity extends AppCompatActivity {
  2. TextView display, progress;
  3. private List<String> worldList;
  4. private ArrayList<RecyclerItems> recyclerItems;
  5. private WordDataBase wordDatabaseForYes;
  6. int counter = 1;
  7. int i = 0;
  8. @Override
  9. protected void onCreate(Bundle savedInstanceState) {
  10. super.onCreate(savedInstanceState);
  11. setContentView(R.layout.activity_main);
  12. display = findViewById(R.id.dispalay);
  13. progress = findViewById(R.id.progress);
  14. recyclerItems = new ArrayList<>();
  15. worldList = new ArrayList<>();
  16. worldList.add("cat");//i want to display this word firstly
  17. worldList.add("dog");//it after click
  18. worldList.add("monkey");//after it
  19. worldList.add("bird");//after it
  20. worldList.add("fish");//etc
  21. worldList.add("home");//etc
  22. worldList.add("car");//etc
  23. }
  24. public void onClickYes(View view) {
  25. if (i >= worldList.size()) return;
  26. display.setText(worldList.get(i));
  27. progress.setText(counter + "");
  28. //заполняем наш recyclerView
  29. //Intent intent = new Intent(MainActivity.this, YesActivity.class);
  30. //intent.putExtra("word", user + ", вам передали: " + gift);
  31. //startActivity(intent);
  32. i++;
  33. counter++;
  34. }
  35. public void onClickNo(View view) {
  36. Toast.makeText(this, "Size is " + worldList.size(), Toast.LENGTH_SHORT).show();
  37. //recyclerItems.add(new RecyclerItems(worldList.get(i)));
  38. i = 0;
  39. counter = 0;
  40. }
  41. @Override
  42. public boolean onCreateOptionsMenu(Menu menu) {
  43. MenuInflater inflater = getMenuInflater();
  44. inflater.inflate(R.menu.menu, menu);
  45. return true;
  46. }
  47. @Override
  48. public boolean onOptionsItemSelected(@NonNull MenuItem item) {
  49. Intent intent;
  50. switch (item.getItemId()) {
  51. case R.id.yes:
  52. recyclerItems.add(new RecyclerItems(worldList.get(i)));
  53. intent = new Intent(MainActivity.this, YesActivity.class);
  54. startActivity(intent);
  55. break;
  56. case R.id.no:
  57. intent = new Intent(MainActivity.this, NoActivity.class);
  58. startActivity(intent);
  59. break;
  60. case R.id.about:
  61. Toast.makeText(this, "By SaturnPRO", Toast.LENGTH_SHORT).show();
  62. //openDialogAbout
  63. break;
  64. }
  65. return true;
  66. }

}
我的第二项活动

  1. public class YesActivity extends AppCompatActivity {
  2. private RecyclerView recyclerView;
  3. private RecyclerView.Adapter adapter;
  4. private RecyclerView.LayoutManager layoutManager;
  5. ArrayList<RecyclerItems> yesWordList;
  6. private WordDataBase wordDatabaseForYes;
  7. @Override
  8. protected void onCreate(Bundle savedInstanceState) {
  9. super.onCreate(savedInstanceState);
  10. yesWordList = new ArrayList<>();
  11. recyclerView = findViewById(R.id.rvYes);
  12. recyclerView.setHasFixedSize(true);
  13. adapter = new RecyclerViewAdapter(yesWordList);
  14. layoutManager = new LinearLayoutManager(this);
  15. recyclerView.setAdapter(adapter);
  16. recyclerView.setLayoutManager(layoutManager);
  17. }
  18. }

我也有一个适配器,但我不能在这里显示它。
我该怎么做? enter code here 请帮忙。

x4shl7ld

x4shl7ld1#

发送意向附加词:

  1. case R.id.yes:
  2. recyclerItems.add(new RecyclerItems(worldList.get(i)));
  3. intent = new Intent(MainActivity.this, YesActivity.class);
  4. intent.putExtra("key", worldList.get(i));
  5. startActivity(intent);
  6. break;

在第二个活动中:

  1. String name = intent.getStringExtra("key");
hmtdttj4

hmtdttj42#

你可以做 wordList 静态成员。然后您可以在适配器中访问它。

相关问题