【发布时间】:2012-03-14 05:57:03
【问题描述】:
在我的音板应用程序中,我有 80 个按钮,它们有一个点击监听器和一个长按监听器。
我的按钮在 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>
并且监听器设置为:
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;
}
});
有没有一种方法可以在 for 循环中以编程方式完成所有这些操作,以便每个按钮的唯一更改是 SoundButtonx,其中每个按钮的 x 增加一。
【问题讨论】:
标签: android