AlertDialog.Builder を使用して作成した次の AlertDialog があります。使用するコードは次のとおりです。
ContextThemeWrapper ctw = new ContextThemeWrapper(activity, R.style.MyTheme );
AlertDialog.Builder builder = new AlertDialog.Builder(ctw);
builder.setAdapter(adapter, null);
builder.setNegativeButton(R.string.ok_btn,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
int selectRemoveButtonId = R.string.remove_all;
for (int i = 0; i < selected.length; i++) {
if (selected[i] == false) {
selectRemoveButtonId = R.string.select_all;
}
}
builder.setNeutralButton(selectRemoveButtonId,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
builder.setOnCancelListener(this);
final AlertDialog dialog = builder.create();
dialog.getListView().setOnItemClickListener(this);
dialog.getListView().setDivider(new ColorDrawable(getResources().getColor(R.color.Light_Black)));
dialog.getListView().setDividerHeight(1);
dialog.show();
dialog.getButton(DialogInterface.BUTTON_NEGATIVE).setBackgroundDrawable(getResources().getDrawable(R.drawable.messege_bg_selector));
dialog.getButton(DialogInterface.BUTTON_NEGATIVE).setHeight(100);
changeAllSelection = dialog.getButton(DialogInterface.BUTTON_NEUTRAL);
changeAllSelection.setHeight(100);
changeAllSelection.setBackgroundDrawable(getResources().getDrawable(R.drawable.messege_bg_selector));
changeAllSelection.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (((Button) v).getText().equals(getContext().getString(R.string.select_all)))
{
ListView list = ((AlertDialog) dialog).getListView();
for (int i = 0; i < list.getCount(); i++)
{
selected[i] = true;
list.setItemChecked(i, true);
}
adapter.notifyDataSetChanged();
((Button) v).setText(R.string.remove_all);
}
else
{
ListView list = ((AlertDialog) dialog).getListView();
for (int i = 0; i < list.getCount(); i++)
{
selected[i] = false;
list.setItemChecked(i, false);
}
adapter.notifyDataSetChanged();
((Button) v).setText(R.string.select_all);
}
}
});
結果は次のとおりです。
次に、選択したパーツを変更します。
1.ホワイトボーダーを取り除きたい。
2.ボタン部分のグレーを黒に変更したい。
誰かがこれを行う方法を知っていますか?
ありがとう。