Android 通過 intent傳值獲得null,androidintent
我在通過intent 獲得傳遞兌現過的時候報錯,null 指標,我是getMap方法進行傳值,代碼如下
| 123456789 |
public void getMap(View view){ Intent i = new Intent(this, BreweryYourTopBeers.class); Log.d("map" , e.beerBreweryId); i.putExtra("breweryID", e.beerBreweryId); i.setClass(this, BreweryMap.class); startActivity(i); } |
從我的日誌中能夠看到 在傳值之前e.beerBreweryId 確實有值,我在下面的代碼中擷取改值
| 1234567891011121314151617181920 |
public class BreweryMap extends ActionbarMenu { BeerData e; String beerID; GoogleMap map; //從bundle 中獲得beer 詳細資料 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_brewerymap); //get brewery data //get beer data Intent intent = getIntent(); Bundle extras = intent.getExtras(); String breweryID = extras.getString("brewreyID"); map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap(); String url = "http://api.brewerydb.com/v2/brewery/"+ breweryID +"?key=myKey&format=json&withLocations=y"; Log.d("map", url); new myAsyncTask(this,map).execute(url);}} |
我每次獲得值都是NULL ,不知道是什麼原因.
處理方法
有一行寫錯誤了. 把 String breweryID = extras.getString("brewreyID"); 換成 String breweryID = extras.getString("breweryID");
原文地址:http://www.itmmd.com/201411/134.html 該文章由 萌萌的IT人 整理髮布,轉載須標明出處。