1

キー「hubahuba」を介して別のアクティビティで編集テキストからユーザー入力を受け取るリストビューがあります。この .class を含むタップをクリックすると、logcat に基づいて NullPointerException エラーが発生します。「String trackinput」行と関係があることがわかっています。

 public static ArrayList<String> list = new ArrayList<String>();
 public static ArrayAdapter<String> adapter;

LisstView lv;
String trackinput;

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

           //listViewCode

    ListView lv = (ListView)findViewById(android.R.id.list);

            //Intent to receive from other activity

    Intent i = getIntent();

    String trackinput = i.getExtras().getString("hubahuba");

            //basic adapter

    adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, list);
    lv.setAdapter(adapter);
    list.add(0, trackinput);
    adapter.notifyDataSetChanged();
    setListAdapter(adapter);

}

これは、アクティビティ 1 からアクティビティ 2 の listView に移動したものです。

public void onClick(View v) { 
 Intent i = new Intent(this, ArgueListActivity.class); 
 i.putExtra("hubahuba",whatedit.getText().toString()); 
 whatedit.setText("");
}
4

1 に答える 1

0

の新しいインスタンスを作成する必要はありませんIntent

次のように実行できます。

String trackinput = getIntent().getStringExtra("hubahuba");

また、コリンが指摘したように

LisstView lv;

ListView lv = (ListView)findViewById(android.R.id.list);

あいまいです


インテントにデータを入れたら、アクティビティを開始し、それにインテントを渡す必要があります。

public void onClick(View v) { 
 Intent i = new Intent(this, ArgueListActivity.class); 
 i.putExtra("hubahuba",whatedit.getText().toString()); 
 whatedit.setText("");
 startActivity(i)
}
于 2013-10-29T19:13:34.400 に答える