web-dev-qa-db-ja.com

cgsize makeを使用するにはどうすればよいですか?

私はcgsizemakeを次のように使用しようとしています:

座標を変更する代わりに、cgrectmakeを使用して画像のフレームを別のサイズにしようとしています。

これまで私は試しました

 maincharacter.frame = cgsizemake (14, 14); 

エラーが出続けます

互換性のないタイプCGsizeからcgrectへの割り当て

13
jwhyyou

1つの解決策は次のとおりです。

CGRect frame = maincharacter.frame;
frame.size = CGSizeMake(14, 14);
maincharacter.frame = frame;
18
rmaddy

CGSizeは高さと幅のみを受け入れます

CGSize c=CGSizeMake(width, height);

フレームサイズを設定する場合は、CGRectMakeを使用します。

maincharacter.frame=CGRectMake(x-Origin,y-Origin, width, height);
14
Mayank Jain

maincharacter.frameは(x、y、width、height)の4つのパラメーターを返す必要があり、CGSizeMakeには「width」と「height」の2つのパラメーターのみがあります。エラーが発生しました。解決策は、frame.sizeを使用することです。これは、CGSizeMake(14、14)で動作する2つのパラメーターを返します。

1
user2239950
 CGSize viewwidth;
    viewwidth=[[UIScreen mainScreen] bounds].size;

これは、cgsizeを使用してデバイスの現在の解像度を取得するのに役立ちます。

viewwidth.width or viewwidth.height

上記のように、あなたはそれを使うことができます。また、以下のコードとして

rightslide=[[UIView alloc]initWithFrame:CGRectMake(0,0, viewwidth.width, viewwidth.height)];
1
Hardik Vyas

タイプcの変数CGSizeを使用するには、高さおよび幅に対してそれぞれc.0およびc.1を呼び出します。彼らがなぜこれらのプロパティを0と1と名付けたのかはわかりませんが、デニス・リッチーにそれを取り上げる必要があります

CGSizeMakeの使用例は次のとおりです。

        var makeSize =  CGSizeMake(size.0, size.1)
        let circ = SKShapeNode(ellipseOfSize: makeSize)

お役に立てば幸いです。

0
nocarrier

以下は、UIScrollViewでのCGSizeMakeの使用例です。

var mainScrollView: UIScrollView?
var numPages = 3

override func viewDidLoad() {
    super.viewDidLoad()

    //this gets the screen frames size
    var fm: CGRect = UIScreen.mainScreen().bounds

    //creates a UIScrollView programmatically
    self.mainScrollView = UIScrollView(frame:CGRectMake(0, 0, fm.size.width, fm.size.height))

    self.mainScrollView!.contentSize = CGSizeMake(self.mainScrollView!.frame.size.width, self.mainScrollView!.frame.size.height * CGFloat(numPages))
 }
0
LuAndre