1

このメソッドを使用してボタンの表示を動的に作成するアプリがあります

public void ButtonLayout() { 
    //Creates new layout and params to go with
    final LinearLayout llb = (LinearLayout)findViewById(R.id.buttonlayout);


    //Creates new buttons and indexes
    for(int i = 0; i < count; i++) {
        Button displayButton = buttonlist.get(i);
        //Adds button to view with index and parameters
        if(displayButton.getTag() == tag || tag == null){
            llb.addView(displayButton, i, lp);
        }
    }
}

次に、メニューである新しいアクティビティを開きます。メニューにはボタンがあります。メニュー アクティビティから上記のメソッドを呼び出す (すべてのボタンをリロードする) ことができるようにしたいのですが、最初のアクティビティをもう一度開始することはできません。

これを行う方法はありますか?

4

2 に答える 2

2

アクティビティに依存関係を注入し、そこで作業を処理するクラスまたはメソッドを作成します

例えば:

public class Util{    
pulic static void  doSomething(LinearLayout  llb, List<Buttons> buttonlist){
    llb.clear(); // pseudocode
    for(int i = 0; i < count; i++) {
        Button displayButton = buttonlist.get(i);
        //Adds button to view with index and parameters
        if(displayButton.getTag() == tag || tag == null){
            llb.addView(displayButton, i, lp);
        }
    }
}
于 2013-04-02T10:50:09.327 に答える
0

このメソッドを持つ親アクティビティを作成できます。このメソッドを使用する必要がある他のアクティビティは、この親アクティビティを拡張でき、ここにあるレイアウト コードを再利用できます。

于 2013-04-02T10:45:23.047 に答える