당신은 Intent
의 새로운 인스턴스를 만들 필요가 없습니다 :
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);
}
이
는 활동 2에서 목록보기에가는 활동 1에서이다 :
String trackinput = getIntent().getStringExtra("hubahuba");
또한 콜린 (Collin)이 지적한대로
당신이 활동을 시작하고 그것에 그것을 의도 을 통과해야 의도에 데이터를 입력 한 후
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)
}
여기서'onCreate()'에서는 멤버 변수라고 가정하는'lv'라는 로컬 변수를 선언하고 있습니다. 어떤 시점에서'lv' 멤버를 초기화하고 있습니까? – Collin
@Collin 멤버 lv를 초기화하는 방법에 대한 예제를 제공 할 수 있습니까? – LimpLimp