简体   繁体   English

Android如何更改意图的listview数组?

[英]Android how to change listview array with intent?

these are my activity, I wanted to know if you could set that depending on the button you could change the array in the next activty Is it possible? 这些是我的活动,我想知道您是否可以根据按钮设置是否可以在下一个活动中更改数组?

(ACTIVITY A) (活动A)

   protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    //creazione fullscreen activity
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
    WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.gruppipuntate_activity);

    //rimozione action bar
    if (Build.VERSION.SDK_INT < 11){
        getSupportActionBar().hide(); 
    }
    //gestione Switch java per selezione puntate
    final OnClickListener listener = new OnClickListener() {
         public void onClick(View v){
             switch(v.getId()){ 
             case R.id.button1:
                break;
             case R.id.button2:
                break;
             case R.id.button3:
                break;
             case R.id.button4:
                break;
             case R.id.button5:
                break;
             case R.id.button6:
                break;
             case R.id.button7:
                break;
             case R.id.button8:
                break;
             case R.id.button9:
                break;
             case R.id.button10:
                break;
             }
         }
    };
    final int[] btnIds = new int[]{R.id.button1, R.id.button2, R.id.button3, R.id.button4
            , R.id.button5, R.id.button6, R.id.button7, R.id.button8, R.id.button9, R.id.button10};
    for(int i = 0; i < btnIds.length; i++) {
        final Button puntate = (Button)findViewById(btnIds[i]);
        puntate.setOnClickListener(new OnClickListener() {
            //preparazione intent
            public void onClick(View arg0) {
                //azioni da fare
                //definisco l'intenzione da fare con il pulsante
                Intent episodi = new Intent(GruppiPuntateActivity.this,EpisodiActivity.class);
                //faccio aprire l'activity desiderata
                startActivity(episodi);
        }
    });

    }
}
}

(ACTIVITY B) (活动B)

findViewById(R.id.listView1);
        findViewById(R.id.textList1);

    // definisco un array di stringhe  
    String[] Product = new String[] { "Product1", "Product2", "Product3", "Product4", "Product5", "Product6", "Product7", "Product8", "Product9" };   

    // definisco un ArrayList  
    final ArrayList <String> listp = new ArrayList<String>();  
    for (int i = 0; i < Product.length; ++i) {  
         listp.add(Product[i]);  
    }  
    // recupero la lista dal layout  
    final ListView mylist = (ListView) findViewById(R.id.listView1);  

    // creo e istruisco l'adattatore  
    final ArrayAdapter <String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listp);  

    // inietto i dati  
    mylist.setAdapter(adapter);

You can use this code: 您可以使用以下代码:

ACTIVITY A: 活动A:

ArrayList<String> products;

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    //creazione fullscreen activity
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
    WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.gruppipuntate_activity);

    //rimozione action bar
    if (Build.VERSION.SDK_INT < 11){
        getSupportActionBar().hide(); 
    }
    //gestione Switch java per selezione puntate
    final OnClickListener listener = new OnClickListener() {
         public void onClick(View v){
                int index = -1;
                switch(v.getId()){ 
                case R.id.button1:
                index = products.indexOf("Product1");
                    if(index >= 0)
                        products.remove(index);
                    break;
                case R.id.button2:
                    index = products.indexOf("Product2");
                    if(index >= 0)
                        products.remove(index);
                    break;
                case R.id.button3:
                    break;
                case R.id.button4:
                    break;
                case R.id.button5:
                    break;
                case R.id.button6:
                    break;
                case R.id.button7:
                    break;
                case R.id.button8:
                    break;
                case R.id.button9:
                    break;
                case R.id.button10:
                    break;
             }
         }
    };
    final int[] btnIds = new int[]{R.id.button1, R.id.button2, R.id.button3, R.id.button4
            , R.id.button5, R.id.button6, R.id.button7, R.id.button8, R.id.button9, R.id.button10};
    for(int i = 0; i < btnIds.length; i++) {
        final Button puntate = (Button)findViewById(btnIds[i]);
        puntate.setOnClickListener(new OnClickListener() {
            //preparazione intent
            public void onClick(View arg0) {

                Intent episodi = new Intent(GruppiPuntateActivity.this,EpisodiActivity.class);
                episodi.putStringArrayListExtra("products", products);
                startActivity(episodi);
        }
    });

}

protected void onResume() {
    super.onResume();

    products = new ArrayList<String>();
    products.add("Product1");
    products.add("Product2");
    products.add("Product3");
    products.add("Product4");
    products.add("Product5");
    products.add("Product6"); 
}

And on ACTIVITY B: 在活动B上:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate();
    setContentView(//Set your content view);

    final ListView mylist = (ListView) findViewById(R.id.listView1);  

    ArrayList<String> produtcs = getIntent().getStringArrayListExtra("products");


    final ArrayAdapter <String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, produtcs);  


    mylist.setAdapter(adapter);
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM