2015-04-09 2 views
0

я создал Activity5 для управления значения на другие виды деятельности ...редактировать вертушка в одной деятельности от другой деятельности

в Activity3 я есть кок ...

Spinner spinner1; 
ArrayList<String> SAlist; 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main_activity3); 
    getActionBar().setDisplayHomeAsUpEnabled(true); 

    Intent intent = getIntent(); 
    ArrayList<String> SAList = intent.getStringArrayListExtra("StringArrayList"); 


    spinner1=(Spinner) findViewById(R.id.spinner1); 

    ArrayAdapter<String> adp=new ArrayAdapter<String>(this, 
      android.R.layout.simple_dropdown_item_1line,SAList); 
    spinner1.setAdapter(adp);  


} 

я думаю, что если я построить новый кок (для показа его пользователю) в activity5 и отредактировать его, затем передавая список массива этой блесны в activity3, это возможно ...

activity5:

Spinner sp; 
EditText et; 
ArrayList<String> li; 

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main_activity5); 
    getActionBar().setDisplayHomeAsUpEnabled(true); 

    li=new ArrayList<String>(); 
    li.add("first item"); 
    sp=(Spinner) findViewById(R.id.spinner1); 
    Button butt=(Button) findViewById(R.id.button1); 
    Button butt1=(Button) findViewById(R.id.button2); 
    et=(EditText)findViewById(R.id.editText1); 
    add(); 

    butt.setOnClickListener(new View.OnClickListener() { 
public void onClick(View v) { 
     li.add(et.getText().toString()); 
     et.setText(null); 
     add(); 
     } 
}); 

    butt1.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 
     Intent intent = new Intent(MainActivity5.this, MainActivity3.class); 
     intent.putStringArrayListExtra("StringArrayList", li); 
     startActivity(intent); 
     } 
    }); 


} 
private void add() { 

     ArrayAdapter<String> adp=new ArrayAdapter<String>(this, 
       android.R.layout.simple_dropdown_item_1line,li); 
     sp.setAdapter(adp); 
      } 

но когда я запускаю приложение и открываю активность3, он показывает «к сожалению приложение остановилось» !!! помогите мне плз!

ответ

1

, когда вы открываете активность3 из главного меню, на этом событии ваше получение SAList null, попробуйте сделать это, когда SAList равно null, он покажет пустой счетчик.

Intent intent = getIntent(); 
    if(intent.getStringArrayListExtra("StringArrayList")!=null) 
    { 
     ArrayList<String> SAList = intent.getStringArrayListExtra("StringArrayList"); 
    }else 
    { 
     ArrayList<String> SAList=new ArrayList<String>(); 
    } 
+0

спасибо, но он не работает ... – hamed

Смежные вопросы