총 게시물 39,203건, 최근 2 건 안내 RSS 글쓰기
이전글  다음글  목록 글쓰기
[안드로이드]

SharedPreference 에 Switch 상태를 저장할 때,

글쓴이 : KuRoN 날짜 : 2018-08-06 (월) 09:51 조회 : 939
글주소 : http://www.androidside.com/B49/170208
 
  SWITCH 구입 디지키
즉시구입가능 및 최소주문량없음. SWITCH 주문. 당일 배송!
www.digikey.kr
  SWITCH 대신이앤엘
2-14구, 접지 및 개별형멀티탭전문, 대량구매할인, 공장직영, 생활용품등.
dsenl.com
  자이젤 수입 총판 랜장비
자이젤 수입총판, 전국대리점 모집, 스위치, POE, AP, 제안 및 상담 가능
www.lanjangbi.co.kr
신청하기


안드로이드, 자바 그리고 다양한 질문에 대해 성실히 답해드립니다. Q&A Jang

이 코드는 Xamarin 코드입니다.


            _Display_Switch = (Switch)_TT.FindViewById(Resource.Id._Display_Switch);
            _Display_Switch.Checked = _Saved_Data.GetBoolean("Test_Switch", false);

            if (_Saved_Data.GetBoolean("Test_Switch", false) == true)
            {
                Toast.MakeText(Activity, "Display를 활성화 합니다", ToastLength.Short).Show();
            }
            else if (_Saved_Data.GetBoolean("Test_Switch", false) == false)
            {
                Toast.MakeText(Activity, "Display를 비활성화 합니다", ToastLength.Short).Show();
            }

            _Display_Switch.CheckedChange += _Display_Switch_CheckedChange; 


        
        private void _Display_Switch_CheckedChange(object sender, CompoundButton.CheckedChangeEventArgs e)
        {
            if (e.IsChecked == true)
            {
                Toast.MakeText(Activity, "Display를 활성화 합니다", ToastLength.Short).Show();
            }
            else if (e.IsChecked == false)
            {
                Toast.MakeText(Activity, "Display를 비활성화 합니다", ToastLength.Short).Show();
            }

            _Data_Edit.PutBoolean("Test_Switch", e.IsChecked);
            _Data_Edit.Apply();
        }


이런식으로 아래에서 이벤트를 줬던걸 위에서 한번 더 해줘야지 정상적으로 껏다 켰을 때도
이벤트가 나타나더라구요.
이걸 위에 문장에서 다시 한번 이벤트 선언 안하고 바로 사용할 수는 없는건가요?

            if (_Saved_Data.GetBoolean("Test_Switch", false) == true)
            {
                Toast.MakeText(Activity, "Display를 활성화 합니다", ToastLength.Short).Show();
            }
            else if (_Saved_Data.GetBoolean("Test_Switch", false) == false)
            {
                Toast.MakeText(Activity, "Display를 비활성화 합니다", ToastLength.Short).Show();
            }

다시 말해서,
이 부분을 삭제하더라도 껏다켰을때 정상적으로 이벤트가 발생하도록 하고 싶습니다..



질문자가 자신의 포인트 5 점을 걸었습니다.
답변하시면 포인트 2을, 답변이 채택되면 포인트 4을 드립니다.

질문답변 게시판에서 궁금한 사항을 해결하셨다면, 애써 답변해주신 분께 잘 되었다고 따뜻한 댓글 한마디 남겨주세요.
그리고 답변해주신 분의 글을 '추천' 해주세요.
추천받으신 분에게 1포인트가, 추천하신 분에게도 1포인트가 적립됩니다. ^^

OSKiller 2018-08-06 (월) 10:38
http://lmgtfy.com/?q=android+switch+check+change+listener
댓글주소 추천 0 반대 0
     
     
KuRoN 2018-08-06 (월) 11:02
[@OSKiller] 이렇게 검색하면 그냥 Switch의 상태에 따른 이벤트 구현방법만 나올뿐 Shared에 대한 내용은 없네요 ㅠ 
댓글주소 추천 0 반대 0
이전글  다음글  목록 글쓰기

 


Copyright ⓒ www.androidside.com. All rights reserved.
채팅 권한: 글쓰기 1개
2레벨 이상만 대화 가능
공개 채팅: 평일 !(9시 ~ 17시),토,일
안사2 변경사항 보러가기 챗방이 잘 안보이면 크롬에서 접속해주세요
챗방 숨기기 |  챗방 보이기