Как перезагрузить ту же самую деятельность с предоставлением данных с намерением? - PullRequest
0 голосов
/ 19 ноября 2018

Ниже мой код, но я не получаю restaurant_id после перезагрузки;

Intent refresh = new Intent(getApplicationContext(), RestaurantDetailActivity.class);
refresh.putExtra("restaurant_id", mDataset.get(position).getRestaurantId());
startActivity(refresh);
finish();

Ответы [ 2 ]

0 голосов
/ 19 ноября 2018

попробуйте

  • Используйте намерение в том же упражнении, как это

     Intent intent = new Intent(MainActivity.this, MainActivity.class);
                   Bundle bundle = new Bundle();
                   bundle.putExtra("restaurant_id", 
                   list.get(position).getRestaurantId());
                   intent.putExtras(bundle);
                   startActivity(intent);
    
  • loadData () используйте в вашем методе onCreate в том жеактивность, подобная этой

    private void loadData() {
    Bundle bundle = intent.getExtras();
    final String restaurantId = bundle.getString("restaurantId ");
    }
    
  • Вы можете использовать метод OnResume в своей деятельности

  • Вы можете определить функцию, которая загружает ваши данные для Activity, и вызывать ее вonResume ().
  • вызов метода loadData, метод onCreate и метод onResume

       @Override
       public void onResume() {
       super.onResume();
    
        loadData();
    
       if (restaurant_id.equals(null)){
    
              //write your code here
         }else{
    
       //write your code here
        }
    

надеюсь, это поможет

0 голосов
/ 19 ноября 2018

Попробуйте выполнить следующие шаги ...

  1. Обновить RestaurantDetailActivity

    Intent intent = new Intent(RestaurantDetailActivity.this, RestaurantDetailActivity.class);
    Bundle bundle = new Bundle();
    bundle.putInt("restaurant_id", mDataset.get(position).getRestaurantId());
    intent.putExtras(bundle);
    startActivity(intent);
    RestaurantDetailActivity.this.finish();
    
  2. В OnCreate() вы должны сделать это следующим образомв той же деятельности

    if(getIntent().getExtras() != null) {
        Bundle extras = getIntent().getExtras();
        int restaurantId = extras.getInt("restaurant_id");
        // todo with restaurantId
    }
    
  3. Счастливое кодирование ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...