Я не могу установить текст в textView, используя данные String пакета, которые передаются из Activity во фрагмент - PullRequest
0 голосов
/ 25 апреля 2020

Передача данных из ProjectDetailActivity в ProjectDetailFragment. Я уже проверяю, что данные могут передаваться во фрагмент с помощью Toast для отображения данных, как вы можете видеть в коде, но проблема в том, что я не могу установить текст в Textview, используя данные из расслоение Если вы видите какую-то ошибку в этом коде, пожалуйста, дайте мне знать. Большое спасибо.

ProjectDetailActivity Class

         private String project_key,project_name,project_priority,project_category,
                        project_start_date ,project_end_date,project_description;
         @Override
         protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_project_detail);

              Intent intent = getIntent();
              project_key         = intent.getStringExtra("project_key");
              project_name        = intent.getStringExtra("project_name");
              project_category    = intent.getStringExtra("project_category");
              project_priority    = intent.getStringExtra("project_priority");

              Bundle bundle = new Bundle();
              bundle.putString("project_key",project_key);
              bundle.putString("project_name",project_name);
              bundle.putString("project_category",project_category);
              bundle.putString("project_priority",project_priority);

              ProjectDetailFragment project_detail_fragment =new ProjectDetailFragment();
              project_detail_fragment.setArguments(bundle);
              getSupportFragmentManager().beginTransaction()
                .replace(R.id.project_detail_fragment,project_detail_fragment)
                .commit();

          }
     }

ProjectDetailFragment Class

 public class ProjectDetailFragment extends Fragment {
      private View root;

      private String project_key,project_name,project_priority,project_category,


      private TextView project_name_textView , project_priority_textView ,
                       project_category_textView ;

      private Context mContext;

      public ProjectDetailFragment() { }

      @Override
      public void onCreate(@Nullable Bundle savedInstanceState) {
           super.onCreate(savedInstanceState);
           if (getArguments() != null) {
                Bundle bundle = getArguments();
                project_key           = bundle.getString("project_key");
                project_name          = bundle.getString("project_name");
                project_priority      = bundle.getString("project_category");
                project_category      = bundle.getString("project_priority");
           }
      }

      public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle 
                  savedInstanceState) {
            root =  inflater.inflate(R.layout.fragment_project_detail, container,false);

            project_name_textView        = root.findViewById(R.id.project_name_textView);
            project_priority_textView    = root.findViewById(R.id.priority_textView);
            project_category_textView    = root.findViewById(R.id.category_textView);


            project_name_textView.setText(project_name);
            project_priority_textView.setText(project_priority);
            project_category_textView.setText(project_category);

            Toast.makeText(mContext,"TASK ACTIVITY\n"+
                    project_key+"\n"+project_name+"\n"+project_category+"\n"
                    +project_priority+"\n",Toast.LENGTH_SHORT).show();

            return root;
       }

       @Override
       public void onAttach(Context context) {
            super.onAttach(context);
            mContext=context;
       }
 }

1 Ответ

0 голосов
/ 25 апреля 2020

Если Toast показывает вам данные, это означает, что нет проблем с получением данных, и я не вижу ошибок при настройке данных для просмотра текста, но проверьте xml, проверьте цвет текста, если цвет текста совпадает с цвет фона, например, текстовый вид фона белый, а цвет текста также белый, очевидно, чем вы не можете видеть текст. или, если нет, вы можете попробовать это следующим образом :::: project_name_textView.setText (String.value of (project_name));

...