iOS HW slider & button 練習-0902

本周作業:運用 slider 移動元件

想到一個很好的題材可以來做這個作業,就是經典名畫《創造亞當》 ,這幅是米開朗基羅創作於西斯廷禮拜堂天頂畫《創世紀》的一部分,創作於1511至1512年間的文藝復興全盛期。這幅壁畫描繪的是《聖經·創世紀》中上帝創造人類始祖亞當的情形,按照事情發展順序是創世紀天頂畫中的第四幅。作為世界名畫之一,後世出現了許多《創造亞當》的仿作。

網路上有太多都是學這幅畫,知道名畫背後的故事後,就可以來做作業了。

本週作業成果:

一開始

拉近之後

因為上帝在右上角,要往左下移動,所以X軸要減少,Y軸要增加。亞當是在左下角,要往右上移動,所以X軸要增加,Y軸要減少,所以調整X,Y軸的參數達到移動的效果。

為了致敬經典的畫作,上帝的手和亞當的手靠近的位置可說是關鍵中的關鍵,如果位置錯了就無法呈現上帝創造亞當的意境與傳遞神的旨意,所以在X,Y軸的位置調整了很久,為了能達到如同名畫般的效果。

程式如下:

//
// ViewController.swift
// slider
//
// Created by Billagood on 2024/9/2.
//

import UIKit

class ViewController: UIViewController {

@IBOutlet weak var lable: UILabel!

@IBOutlet weak var rabbit: UIImageView!

@IBOutlet weak var dog: UIImageView!


override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}

@IBAction func moveImage(_ sender: UISlider) {
//dog是人
dog.frame.origin.x = CGFloat(165 + 100 * sender.value)
dog.frame.origin.y = CGFloat(180 - 50 * sender.value)
//rabbit是上帝
rabbit.frame.origin.x = CGFloat(500 - 80 * sender.value)
rabbit.frame.origin.y = CGFloat(60 + 50 * sender.value)

//顯示小數點第二位
lable.text = String(format: "%.2f", sender.value)

}

}

心得:

  1. 欣賞名畫背後的故事蠻有趣的,真希望有機會去看名畫的真跡。
  2. 程式碼不難,但是調整x,y軸座標很花時間。

--

--