2011-08-27 51 views
0

我有2個活動 - 說活動A和B. 我的主要活動(A)有2個按鈕。點擊按鈕1時,我開始另一項活動。第二個活動(B)創建一個使用字符串數組來填充自定義列表項的列表視圖。確定哪個按鈕被點擊以填充Android列表視圖

現在,當單擊Activity A中的Button 2時,我想使用Activity B中的相同代碼填充列表視圖,但使用不同的字符串數組。我怎麼做?我不想創建另一個活動只是爲了替換ListView的字符串arryay。

/*活動A/

public class mainmenu extends Activity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
requestWindowFeature(Window.FEATURE_NO_TITLE); 
super.onCreate(savedInstanceState); 
setContentView(R.layout.main); 


Button button1 = (Button) findViewById(R.id.Button01); 
button.setOnClickListener(new View.OnClickListener() { 
public void onClick(View v) { 
     // Perform action on click 

Intent i = new Intent(getApplication(), ActivityB.class); 
startActivity(i); 
    }); 


Button button2 = (Button) findViewById(R.id.Button02); 
button1.setOnClickListener(new View.OnClickListener() { 
public void onClick(View v) { 
    Intent i = new Intent(getApplication(), ActivityB.class); 
     startActivity(i); 


    } 
    }); 

/*活動B * * **

public class anotheractivity extends ListActivity { 




public void onCreate(Bundle icicle) { 
super.onCreate(icicle); 

    String[] names = getResources().getStringArray(R.array.heading_name); 
    String[] descr = getResources().getStringArray(R.array.heading_desc); 
    this.setListAdapter(new myArrayAdapter(this, names, descr)); 
    ListView lv = getListView(); 

    Resources res = getResources(); 

    Drawable sm = res.getDrawable(R.drawable.mydivider); 


    lv.setDivider(sm); 
    lv.setDividerHeight(1); 
} 

回答

0

您可以使用putExtra數據到你的活動B通過。請參閱this問題作爲一個好例子。在您的活動B,你可以得到這些數據,並填充根據什麼傳入您的列表

發生的活性:

Intent i = new Intent(ActivityA.this, ActivityB.class); 
i.putExtra("arrayToUse", 1); 
startActivity(i); 

對於活動B,你會做這樣的事情在OnCreate:

Bundle extras = icicle.getExtras(); 
int whichArrayToUse = extras.getInt("arrayToUse"); 
相關問題