2016-11-13 3 views
0

Я не знаю, что я сделал не так. Я следил за учебником, но мои ценности заканчиваются пустым.Ценности от намерения не отображаются

Passsing значения намерению

ListView lvItems = (ListView) view.findViewById(R.id.lvDashboardCompleted); 
     lvItems.setOnItemClickListener(new AdapterView.OnItemClickListener() { 


      @Override 
      public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
       //Toast shows the id over here 
       Intent intent = new Intent(getActivity(), categoryActivity.class); 
       intent.putExtra("CATEGORY_ID", id); 
       startActivity(intent); 
      } 
     }); 

Оживляя значение из Намерение

public class categoryActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     getSupportActionBar().hide(); 
     setContentView(R.layout.activity_category); 

     String recevied_cat_id = getIntent().getStringExtra("CATEGORY_ID"); 

     Context context = getApplicationContext(); 
     CharSequence text = recevied_cat_id; 
     int duration = Toast.LENGTH_SHORT; 

     Toast toast = Toast.makeText(context, text, duration); 
     toast.show(); 
    } 
} 
+1

Вы передаете значение 'long', но извлекаете' String'. – ARiF

ответ

1

Попробуйте заменить метод onCreate. В чем проблема? Поскольку @ARiF правильно подсвечивается, вы проходите долго от своего намерения, но в своем методе вы извлекаете String.

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     getSupportActionBar().hide(); 
     setContentView(R.layout.activity_category); 

     Long recevied_cat_id = getIntent().getLongExtra("CATEGORY_ID", 1L); 

     Context context = getApplicationContext(); 
     String strLong = Long.toString(recevied_cat_id); 
     CharSequence text = strLong; 
     int duration = Toast.LENGTH_SHORT; 

     Toast toast = Toast.makeText(context, text, duration); 
     toast.show(); 
    } 
+0

Большое спасибо –

1

использования вместо String recevied_cat_id = getIntent().getLongExtra("CATEGORY_ID", defaultLongValue);.

+0

Большое спасибо –

+0

С удовольствием :) – ARiF

Смежные вопросы