private class ButtonAdapter extends ArrayAdapter<ButtonString> implements
OnCheckedChangeListener {
private List<ButtonString> items;
ToggleButton bt;
ToggleButton bt1;
ToggleButton bt2;
public ButtonAdapter(Context context, int textViewResourceId,
List<ButtonString> items) {
super(context, textViewResourceId, items);
this.items = items;
}
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.togglebtn, null);
ButtonString a = items.get(position);
a.getbtn();
TextView tt = (TextView) v.findViewById(R.id.toggletext);
bt = (ToggleButton) v.findViewById(R.id.togglebtnid);
bt1 = (ToggleButton) v.findViewById(R.id.togglebtnid1);
bt2 = (ToggleButton) v.findViewById(R.id.togglebtnid2);
bt.setOnCheckedChangeListener(this);
bt1.setOnCheckedChangeListener(this);
bt2.setOnCheckedChangeListener(this);
if (a.getbtn() == gAutolockScreen) {
bt.setVisibility(0);
}
if (a.getbtn() == gCompass) {
bt1.setVisibility(0);
}
if (a.getbtn() == gVibration)
bt2.setVisibility(0);
if (tt != null) {
tt.setText(a.getName());
}
if (bt != null) {
}
}
return v;
}
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
// TODO Auto-generated method stub
if (buttonView == bt) {
Log.d("토글", "화면자동잠금");
}
if (buttonView==bt1) {
Log.d("토글", "나침반");
}
if (buttonView==bt2) {
Log.d("토글", "진동");
}
Log.d("이상하네",""+buttonView.getId());
if(isChecked){
buttonView.setBackgroundDrawable(getResources().getDrawable(R.drawable.arrow));
}
if(!isChecked){
buttonView.setBackgroundDrawable(getResources().getDrawable(R.drawable.back_tile));
}
}
}
class ButtonString {
String name;
ToggleButton Tbtn;
public ButtonString(String name, ToggleButton btn) {
this.name = name;
this.Tbtn = btn;
}
public String getName() {
return name;
}
public ToggleButton getbtn() {
return Tbtn;
}
}
}
초보라 코드가엉망입니다 ㅠㅠ
총 3개에 리스트중 우선 3개 토글다 감춰놨다나가
리스트를 부르면 그 맞는 포지션을 찾아서 토글버튼을 달았는데 change 리스너에서 if문이 bt2일때만 log가 찍힙니다..
이상하게도...이유좀 아시는 고수님. 좀 알려주세요.!