2017-04-16 5 views
0

TabBar 응용 프로그램이 있는데 즐겨 찾기 탭을 설정하려고합니다. 버튼을 생성하여 즐겨 찾기 셀을 탭에 보내지 만 즐겨 찾기에 추가하면 바로 즐겨 찾기 탭에 추가됩니다. 그러나 앱을 종료하면 즐겨 찾기가 저장되지 않습니다. 즐겨 찾는 탭에 즐겨 찾기 셀을 저장하려면 어떻게해야합니까? UserDefault가 최고의 업무를 수행합니까? 그것을 할 수있는 방법 만약 그렇다면 ...TableViewController에서 개체를 저장하는 방법

이 내가 제일 좋아하는 버튼을 설정하는 방법입니다 :

//create a new button 
     let Favoritebutton: UIButton = UIButton(type: UIButtonType.custom) 
     //set image for button 
     Favoritebutton.setImage(UIImage(named: "EmptyHeart.png"), for: .normal) 
     Favoritebutton.setImage(UIImage(named: "FilledHeart.png"), for: .selected) 
     //add function for button 
     Favoritebutton.addTarget(self, action: #selector(self.button), for: .touchUpInside) 
     //set frame 
     Favoritebutton.frame = CGRect(x:0,y: 0,width: 35,height: 35) 

     Favoritebutton.isSelected = UserDefaults.standard.bool(forKey: "isSaved") 

     let barButton = UIBarButtonItem(customView: Favoritebutton) 
     //assign button to navigationbar 

     self.navigationItem.rightBarButtonItem = barButton 

    } 


    @IBAction func button(sender: UIButton) { 
     let newValue = !sender.isSelected 
     sender.isSelected = newValue 
     UserDefaults.standard.set(newValue, forKey: "isSaved") 

     let tabItem = self.tabBarController?.tabBar.items![3] 
     sel_val = tabItem?.badgeValue 
     if(sel_val == nil){ 
      sel_val = "0" 
     } 
     let sel_num = Int(sel_val!) 

     let fav: NSMutableArray = [] 
     fav.add(barImage) 
     fav.add(barName) 
     fav.add(streetName) 
     if sender.isSelected { 
      tabItem!.badgeValue = String(format: "%d", sel_num! + 1) 
      favorite.add(fav) 
     } else { 
      tabItem!.badgeValue = String(format: "%d", sel_num! - 1) 
      favorite.remove(fav) 
     } 
    } 

답변

0

@Newbie - 난 당신이 응용 프로그램은 무엇인가 열 두 번째 시간을 확인하지 생각하여 NSUserDefault와 함께 가장 좋아하는 탭.

+0

아마도 ... 내가 어떻게 할 수 있습니까? –

+0

앱을 열면 즐겨 찾는 항목이 선택되었는지 여부를 확인할 수 있습니다. 선택하면 표시 할 수있는 항목을 기반으로 선택되는 항목을 확인할 수 있습니다. –

+0

코드 스 니펫을 사용할 수 있습니까? –