1

私の配列

String array1[] = menuname.toArray(new String[menuname.size()]);
array2 = menuid.toArray(new String[menuid.size()]);

私の動的ボタンコーディング

LinearLayout linearLayout = (LinearLayout) findViewById(R.id.l);
        List<Button> list = new ArrayList<Button>();
        for (int i = 1; i < array1.length; i++) {
            LinearLayout l = new LinearLayout(this);
            l.setOrientation(LinearLayout.HORIZONTAL);


            button.setText(String.valueOf(i));
            button.setText(" " + array1[i]);
            button.setId(i);
            button.setWidth(180);
            button.setHeight(60);

            button.setTextColor(Color.BLUE);
            button.setTypeface(Typeface.SERIF, Typeface.BOLD);
            l.addView(button);
            linearLayout.addView(l);// if you want you can layout params
                                    // linearlayout
            list.add(button);

        }

array1[]の名前が​​含まれていbuttonます...そしてarray2[]ボタンのIDが含まれています....動的ボタンのIDと名前を設定したい..これを行う方法は?

4

3 に答える 3

0

多分使用しbutton.setText(array2[i] + " " + array1[i]);ますか?それはあなたが望む何か他のものですか?

于 2013-02-28T07:35:54.153 に答える
0

を使用して、コードでボタンのIDを設定できます

  button.setId(array2[i]);
于 2013-02-28T07:55:57.717 に答える
0

id実行時にボタンに設定し、それを設定するonClickListenerと、ボタンがクリックされたときにそれが得られidます。

if(nameArray.length()==idArray.length())
    {
    LinearLayout linearLayout = (LinearLayout) findViewById(R.id.menuLayout);
    List<Button> buttonList = new ArrayList<Button>();
    for (int i = 1; i < nameArray.length; i++) {

        btnMenu.setText(String.valueOf(i));
        btnMenu.setText(" " + nameArray[i]);
        btnMenu.setId(idArray[i]);
        btnMenu.setWidth(180);
        btnMenu.setHeight(60);

        btnMenu.setTextColor(Color.BLUE);
        btnMenu.setTypeface(Typeface.SERIF, Typeface.BOLD);

        btnMenu.setOnClickListener(this);

        linearLayout.addView(btnMenu);
        list.add(button);
    }
 }


    public void onClick(View view) {
        super.onClick(view);
        switch (view.getId()) {
        case idArray[0]:
            // button with id "idArray[0]" is clicked
            break;
        }
    }
于 2013-02-28T07:43:31.113 に答える