点击加号增加书架,点击减号减少书架

举报
清雨小竹 发表于 2022/10/27 11:24:16 2022/10/27
【摘要】 #import "ReaderViewController.h"#define ImageHeight 120static int num = 0;@interface ReaderViewController ()@end@implementation ReaderViewController- (id)initWithNibName:(NSString *)nibNameOrNil bu...
#import "ReaderViewController.h"

#define ImageHeight 120
static int num = 0;

@interface ReaderViewController ()

@end


@implementation ReaderViewController

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    
    //字体的颜色
    self.navigationController.navigationBar.tintColor = [UIColor colorWithRed:248.0/255.0 green:172.0/255.0 blue:37.0/255.0 alpha:1.0];
    //导航栏背景图
    [self addBackgroundView:@"1.png"];
    
    //左侧删除按钮
    UIBarButtonItem *rightBarButton = [[UIBarButtonItem alloc]
                                       initWithTitle:@"delete"
                                       style:UIBarButtonItemStyleBordered
                                       target:self
                                       action:@selector(dele)];
    //右侧增加按钮
    UIBarButtonItem *leftBarButton = [[UIBarButtonItem alloc]
                                      initWithBarButtonSystemItem:UIBarButtonSystemItemAdd
                                      target:self
                                      action:@selector(add)];
    
    self.navigationItem.rightBarButtonItem = rightBarButton;
    self.navigationItem.leftBarButtonItem = leftBarButton;
    
    //scrollerView
    scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 416)];
    scrollView.contentSize=CGSizeMake(320,480);
    
    //设置背景颜色
    UIImage *backimg=[UIImage imageNamed:@"3.png"];
    UIImageView *backview=[[UIImageView alloc] initWithImage:backimg];
    backview.frame=CGRectMake(0, 0, 320, 480);
    [self.view addSubview:backview];
    
    [self.view addSubview:scrollView];
    //重新刷新界面
    [self reloadView];

}
//导航栏上标题
-(void)addBackgroundView:(NSString*)image{
    
    UIImageView *imgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:image]];
    imgView.frame = CGRectMake(0, 0, 320, 44);
    [self.navigationController.navigationBar addSubview: imgView];
    
    UILabel *title = [[UILabel alloc] initWithFrame:CGRectMake((320-150)/2, 0, 150, 44)];
    [title setText:@"书架"];
    [title setTextColor:[UIColor whiteColor]];
    [title setTextAlignment:NSTextAlignmentCenter];
    [title setShadowColor:[UIColor grayColor]];
    [title setBackgroundColor:[UIColor clearColor]];
    [title setFont:[UIFont boldSystemFontOfSize:20.0]];
    [self.navigationController.navigationBar addSubview:title];
}

//添加一个书架
-(void)add{
    
    num++;
    
    UIImage *backimg=[UIImage imageNamed:@"2.png"];
    UIImageView *backview=[[UIImageView alloc] initWithImage:backimg];
    backview.frame=CGRectMake(0, (num-1)*ImageHeight, 320, ImageHeight);
    backview.tag = num+100;
    
    [scrollView addSubview:backview];
    
    if (num>3) {
        scrollView.contentSize=CGSizeMake(320,num*ImageHeight);
    }
}

//删除一个书架
-(void)dele{
    
    if (num<=0) {
        return;
    }
    
    for (UIView *view in scrollView.subviews) {
        if(view.tag == (num+100))
            [view removeFromSuperview];
    }
    
    num--;
    
    if (num>3) {
        scrollView.contentSize=CGSizeMake(320,num*ImageHeight);
    }
    
}

//主界面初始化
-(void)reloadView{
    
    NSLog(@"reloadView");
    //遍历当前界面的所有子界面,把子界面删除干净
    for(UIView *view in scrollView.subviews){
        [view removeFromSuperview];
    }
    
    scrollView.showsVerticalScrollIndicator=NO;
    scrollView.showsHorizontalScrollIndicator=NO;
    scrollView.delegate=self;
    [scrollView setScrollEnabled:YES];
    
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。