스위치를 프로그램 적으로 끄기 상태로 전환하려고하지만 문제가 발생합니다.android 스위치가 프로그래밍 방식으로 전환되지 않음
나는 myswitch.setischecked (false)와 myswitch.toggle을 모두 사용해 보았고 스위치는 현재 상태로 두지 만 파란색에서 회색으로 배경을 변경하므로 안 드 로이드는 스위치가 꺼져 있다고 생각하지만 표시는하지 않는다. 이것을 반영하지 않습니다. 여기
이 고통 다른
final Switch InstaPrint = (Switch) rootView.findViewById(R.id.instaprint);
final Switch MyZebraSwitch = (Switch) rootView.findViewById(R.id.myzebraswitch);
final Switch StockZebraSwitch = (Switch) rootView.findViewById(R.id.stockzebraswitch);
final Switch StoreZebraSwitch = (Switch) rootView.findViewById(R.id.storezebraswitch);
final Spinner MyZebraSpinner = (Spinner) rootView.findViewById(R.id.myzebraspinner);
final Spinner StockZebraSpinner = (Spinner) rootView.findViewById(R.id.stockzebraspinner);
final Spinner StoreZebraSpinner = (Spinner) rootView.findViewById(R.id.storezebraspinner);
//InstantPrint
InstaPrint.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(InstaPrint.isChecked())
{
if(!MyZebraSwitch.isChecked() && !StockZebraSwitch.isChecked() && !StoreZebraSwitch.isChecked())
{
Vibrator vib = (Vibrator) getActivity().getSystemService(Context.VIBRATOR_SERVICE);
vib.vibrate(1000);
// PlayFile("bell.mp3");
Toast toast = Toast.makeText(getActivity(), "You must select at least one printer", Toast.LENGTH_LONG);
toast.show();
InstaPrint.toggle();
}
}
}
});
누군가 내 코드?
EDIT - 내 장치의 방향을 변경하면 문제가 해결된다는 것을 발견했습니다. 스위치가 조각으로 포함되어 조각을 다시 그리면 문제를 해결할 수있는 것처럼 보입니다. 이제 조각은 다시 그리는 방법을 알아야합니다. 프로그래밍 방식으로!
그게 그 의견에 더 가치가 있고 대답에 대한 점수 가치가 정확하고 내 문제를 해결 – dave
오리 엔테이션 변경 문제가 내 기대를 지원한다는 사실을 @dave. 액티비티와 프래그먼트를 죽이고 다시 그리기 (모든 오리엔테이션 변경과 함께 발생) 나는 의심스러운 무한 루프 프로세스를 없애 버릴 것입니다. 내가 조각을 다시 그릴 때마다 문제를 고치려고했다. – steve
@dave 귀하의 앱으로 행운을 빌어서 기쁩니다! – steve