1

私は機能を持っています:

public void vfShareQuote (String textToShare){
    Intent sendIntent = new Intent();
    sendIntent.setAction(Intent.ACTION_SEND);
    sendIntent.putExtra(Intent.EXTRA_TEXT, textToShare);
    sendIntent.setType("text/plain");
    startActivity(sendIntent);
}

また、プログラムで作成されたボタンがたくさんあります。そのうちの 2 つは次のとおりです。

Button agafon_1 = new Button(this);agafon_1.setText(R.string.agafon_1);llPreViewList.addView(agafon_1, lParams);
Button agafon_2 = new Button(this);agafon_2.setText(R.string.agafon_2);llPreViewList.addView(agafon_2, lParams);

OnClickListener は次のとおりです。

OnClickListener oclShareQuote = new OnClickListener() {
    @Override
    public void onClick(View v) {
//Set the text based on the selected button and send it to function vfShareQuote
    switch (v.getId()) {
    case R.string.agafon_1:
        vfShareQuote(getResources().getText(R.string.name_agafon)+":\n"+getResources().getText(R.string.agafon_1));
        break;
    case R.string.agafon_2:
        vfShareQuote(getResources().getText(R.string.name_agafon)+":\n"+getResources().getText(R.string.agafon_2));
        break;
    }
    }
};

そしてもちろん:

agafon_1.setOnClickListener(oclShareQuote);
agafon_2.setOnClickListener(oclShareQuote);

しかし、ボタンを押しても何も起こりません。なんで?それとも、プログラムでボタンを作成していますか? 何をすべきか? グーグル翻訳。

4

3 に答える 3

0

プログラムでボタンを作成するときは、次のように各ボタンの ID を指定する必要があります。

agafon_1.setId("btn id");

また、問題もあります。一部のAndroid SDKスイッチケースが機能しなくなったため、ifステートメントで作成する必要があります。

于 2013-06-28T11:54:51.067 に答える