1

Java では、この方法でボタンを作成した後:

Button button1= new Button();   

この方法でボタンの参照を識別できます

public void actionPerformed(ActionEvent bottonName){            
            Button name_of_the_button= (Button)bottonName.getSource();
                    //Inside 'name_of_the_button' I have 'button1'
}

Androidで同じことを行うにはどうすればよいですか?私はこのようにしてみました

 public void onClick(View bottonName) {
            Button name_of_the_button= (Button )bottonName.getSource();
}

しかし、Android にはメソッド getSource() がありません。

4

6 に答える 6

2
Button name_of_the_button = (Button)findViewById(R.id.my_btn);

それから

name_of_the_button.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

            if (v.getId() == R.id.my_btn) {

                              // button action here

            }

        }
    });
于 2013-01-07T09:52:57.057 に答える
1

次のように確認できます。

Button button1= new Button();

button1.setOnClickListener(this);    

@Override
    public void onClick(View view) {
        // TODO Auto-generated method stub
        if (view.getId() == button1.getId())
        {
            //Perform something
        }

    }

したがって、両方のIDが一致します(クリックされたボタンのIDとJavaコードで作成したID)

于 2013-01-07T09:55:58.887 に答える
0

ボタンを作成し、これを子として追加して、そのボタンmain layoutに設定しますclick listener

Button buyButton = new Button(this);
    buyButton.setText(R.string.button_back);
    buyButton.setLayoutParams(new LayoutParams(
        ViewGroup.LayoutParams.WRAP_CONTENT,
            ViewGroup.LayoutParams.WRAP_CONTENT));
    layout.addView(buyButton);
buyButton.setOnClickListener(new OnClickListener() {
                public void onClick(View v) {
// Do What you want on click

}});
于 2013-01-07T09:55:44.407 に答える
0

Android では、ビューは画面上の長方形の領域を占有し、描画とイベント処理を担当します。ビューはウィジェットの基本クラスであり、インタラクティブな UI コンポーネント (ボタン、テキスト フィールドなど) を作成するために使用されます。したがって、ボタンを呼び出すには、最初にボタンを宣言する必要があります。

Button nameButton = (Button)findViewById(R.id.buttononyourXML);

または、次を使用してプログラムで作成することもできます

ViewGroup linearLayout = (ViewGroup) findViewById(R.id.yourLinear);
Button btn = new Button(this);
btn.setText("A Button");
btn.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
linerLayout.addView(btn);

次に、必要なメソッドに基づいてリスナーを追加します

そのあなたの選択..

乾杯

于 2013-01-07T09:58:12.707 に答える
0
Button but1 = (Button)findViewById(R.id.button1); within the onCreate of your layout

続いてリスナー

but1.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {

        if (v.getId() == R.id.but1) {

                          // your code here

        }

    }
});
于 2013-01-07T09:51:31.160 に答える
0

まず、Android != Corejava. android:onClick = "buttonClick"メソッドを機能させるには、xml でボタンの onClick by を定義する必要があります。

次に、 onClick メソッドは次のようになります

public void onClick(View view)
{
 Button button = (Button)view; // here is the reference.
}
于 2013-01-07T09:52:48.680 に答える