私のサウンドボードアプリには、クリックリスナーとロングクリックリスナーを持つ80個のボタンがあります。Androidはプログラムでボタンを宣言しますか?
私のボタンはとしてXMLで宣言されています:
<TableRow
android:id="@+id/tableRow1"
android:layout_height="wrap_content" >
<Button
android:id="@+id/sound0"
android:layout_width="1dip"
android:layout_height="fill_parent"
android:layout_weight=".31"
android:longClickable="true"
android:text="@string/sound0" >
</Button>
<Button
android:id="@+id/sound1"
android:layout_width="1dip"
android:layout_height="fill_parent"
android:layout_weight=".31"
android:longClickable="true"
android:text="@string/sound1" >
</Button>
<Button
android:id="@+id/sound2"
android:layout_width="1dip"
android:layout_height="fill_parent"
android:layout_weight=".31"
android:longClickable="true"
android:text="@string/sound2" >
</Button>
</TableRow>
とリスナーは、以下のように設定されている:私は、forループをプログラム的にこのすべてを行うことができます方法はあり
Button SoundButton0 = (Button) findViewById(R.id.sound0);
SoundButton0.getBackground().setAlpha(150);
SoundButton0.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
String name = getString(R.string.sound0);
tracker.trackEvent("Clicks", "Play", name, 0);
playSound(R.raw.sound0);
}
});
SoundButton0.setOnLongClickListener(new OnLongClickListener() {
public boolean onLongClick(View v) {
String name = getString(R.string.sound0);
tracker.trackEvent("Clicks", "Saved", name, 0);
ring(soundArray[0], name);
return false;
}
});
ように各ボタンのために変更された唯一のものはSoundButtonxであり、xは各ボタンごとに1つずつ増えます。
同じ問題のためにここにいるのですか? – mpeerman
@mpeermanリンクの例を確認してください。 –