![](/img/trans.png)
[英]java.lang.NullPointerException when using webdriver manager selenium java
[英]java.lang.NullPointerException when using getStringArray
我正在開發一個會生成寶藏列表的應用程序。
這是我的字符串數組,用於將列表存儲到:
String treasure[] = {"", "", "", "", "", "", "", "", "", "",
"", "", "", "", ""} ;
這就是我填寫價值觀的方式
treasure[0] = coinvalue + " copper pieces";
這是我將已編譯列表發送到下一部分的位置:
Bundle treasurelist = new Bundle();
treasurelist.putStringArray("loot", treasure);
Intent a = new Intent(TreasureGen.this, Treasure_Results.class);
a.putExtras(treasurelist);
startActivity(a);
這是我在下一階段挑選清單的地方:
public class Treasure_Results extends ListActivity {
String getTreasure[] ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle gettreasurelist = getIntent().getExtras();
getTreasure = gettreasurelist.getStringArray("loot");
setListAdapter(new ArrayAdapter<String>(Treasure_Results.this, android.R.layout.simple_list_item_1, getTreasure));
}
}
這是我得到的錯誤代碼:
Caused by: java.lang.NullPointerException
at com.giraffelitis.ptindustries.dungeonmasterassistant.Treasure_Results.onCreate(Treasure_Results.java:24)
at android.app.Activity.performCreate(Activity.java:5431)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2269)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2363)
at android.app.ActivityThread.access$900(ActivityThread.java:161)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:157)
at android.app.ActivityThread.main(ActivityThread.java:5356)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
at dalvik.system.NativeStart.main(Native Method)
當我單擊鏈接時,它會將我發送到此代碼行
getTreasure = gettreasurelist.getStringArray("loot");
因為這只是我嘗試用Java編寫代碼的第二天,所以我不知道該怎么辦...我瀏覽了各個論壇,試圖找到解決方案,但也有一些類似的問題,但是我找不到我的問題這些答案。
UPDATE
我嘗試了以下建議...這是適用於此功能的TreasureGen活動代碼。
roll.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
treasurecr = counter;
int d100;
int coinvalue;
String treasure[] = {"", "", "", "", "", "", "", "", "", "",
"", "", "", "", ""} ;
Bundle treasurelist = new Bundle();
treasurelist.putStringArray("loot", treasure);
Intent a = new Intent(TreasureGen.this, Treasure_Results.class);
a.putExtras(treasurelist);
startActivity(a);
Intent openStartPoint = new Intent("com.giraffelitis.ptindustries.TREASUREGEN2");
startActivity(openStartPoint);
}
});
這是我整個Treasure_Results活動
public class Treasure_Results extends ListActivity {
String getTreasure[] ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle treasurelist = getIntent().getExtras();
getTreasure = treasurelist.getStringArray("loot");
System.out.println("getTreasure = " + getTreasure);
setListAdapter(new ArrayAdapter<String>(Treasure_Results.this, android.R.layout.simple_list_item_1, getTreasure));
}
//@Override
//public void onListItemClick(ListView l, View v, int position, long id) {
// do something with the data
//}
}
這是關於getTreasure數組中內容的錯誤日志
08-24 17:02:34.040 25764-25764/com.giraffelitis.ptindustries.dungeonmasterassistant I/System.out﹕ getTreasure = [Ljava.lang.String;@429bcae0
謝謝你的時間!
如果要在兩個活動之間傳輸數組字符串,則可以使用以下代碼(在您的初始活動中):
Intent intent = new Intent();
in.putExtra("loot", treasure);
同時,在您要處理數組的活動中:
Intent intent = getIntent();
String treasure[] = intent.getStringArrayExtra("loot");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.