1. ホーム
  2. ios

[解決済み] UISegmentedControlを使用してビューを切り替えるにはどうしたらいいですか?

2023-05-28 17:01:11

質問

UISegmentedControl の異なる状態を使用してビューを切り替える方法を考えています。Apple が App Store で 'Top Paid' と 'Top Free' を切り替えるときに行う方法に似ています。

どのように解決するのですか?

最も簡単な方法は、2つのビューを用意し、どちらのビューが選択されたかを示すために、それらの可視性を切り替えることです。これは、どのように行うことができるかについてのいくつかのサンプルコードです。 UISegmentControl を使用して、表示されているビューを切り替えることができます。



- (IBAction)segmentSwitch:(id)sender {
  UISegmentedControl *segmentedControl = (UISegmentedControl *) sender;
  NSInteger selectedSegment = segmentedControl.selectedSegmentIndex;

  if (selectedSegment == 0) {
    //toggle the correct view to be visible
    [firstView setHidden:NO];
    [secondView setHidden:YES];
  }
  else{
    //toggle the correct view to be visible
    [firstView setHidden:YES];
    [secondView setHidden:NO];
  }
}



もちろん、さらにコードをリファクタリングして、右のビューを隠したり表示したりすることができます。