0
我是一個android編程的新手。任何人都可以解釋爲什麼我的'adapter'在我的代碼的強調部分中未解決。我的程序parent actvity首先將一些數據添加到一個數組,並將其轉換爲字符串數組使用listview。在點擊一個按鈕時,它會啓動一個輔助活動,返回一個添加到數組列表中的字符串,並且新數據應該在顯示屏上更新。無論何時我將「adapter.notifyDataSetChanged();」我收到消息「適配器」未解決。任何人都可以解釋爲什麼或者我可以做些什麼來解決它。請參閱代碼 謝謝。Android:爲什麼我的適配器無法解析?
import java.util.ArrayList;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
public class ShitActivity extends Activity {
ArrayList<String> arrlist=new ArrayList<String>();
private static final int REQUEST_CODE=1;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ListView list=(ListView)findViewById(R.id.list);
arrlist.add("android");
arrlist.add("android");
arrlist.add("iphone");
arrlist.add("android");
arrlist.add("Blackberry");
arrlist.add("webos");
setButtonClickListener();
String[] arr=arrlist.toArray(new String[arrlist.size()]);
ArrayAdapter<String> adapter=new ArrayAdapter<String> (this,R.layout.list_item,R.id.test1,arr);
list.setAdapter(adapter);
}
private void setButtonClickListener(){
Button Read1=(Button)findViewById(R.id.Read1);
Read1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent (ShitActivity.this,Deliverstring.class);
startActivityForResult(i,REQUEST_CODE);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
super.onActivityResult(requestCode, resultCode, data);
if(resultCode==RESULT_OK && requestCode==REQUEST_CODE){
String in1=data.getStringExtra("datareturn");
arrlist.add(in1);
***adapter.notifyDataSetChanged();***
}
}}