Interface Builder cannot find intrinsicContentSize defined in a custom view












0














Interface Builder cannot find intrinsicContentSize of a custom view.
For this given view code,



import Foundation
import UIKit

@IBDesignable
final class CustomView1: UIView {
override var intrinsicContentSize: CGSize {
return CGSize(width: 100, height: 100)
}
}


I put a UIView instance and set its class to CustomView1.
It works at first, but if I close and re-open the storyboard, IB sometimes(not always) shows an error.



enter image description here



IB cannot find width of the view.



enter image description here



And this error disappears if I force Update Frames.



enter image description here



It looks like a bug. Or am I missing something important? What's your opinion? Any workaround?










share|improve this question






















  • just curious, is it the same when you set the intrinsic content size in the storyboard? would that solve your problem? also during run time is the intrinsic content size factored in?
    – Prajwal Udupa
    Nov 20 at 9:00










  • @PrajwalUdupa I didn't and I won't try it because my goal is baking in intrinsic size into a class. If I have to set size for each instance manually, it's way out of intention.
    – Eonil
    Nov 20 at 9:20












  • I understand that... Hence the word curious.. :P But have you tried layout methods in prepare of interface builder? I am not sure if the override will be used before the actual layout... again.. really not sure.. We too are investigating ibdesignable issues.. for us, the view is in a different framework and XCode has issues rendering it in storyboard has throws a lot of errors till it is refreshed in storyboard
    – Prajwal Udupa
    Nov 20 at 9:30










  • @PrajwalUdupa If code is in different framework, you have to set module name to make IB to locate the code. Anyway, it has numerous errors and bug-like errors in that case, so I would not recommend to put storyboard in other than the main module.
    – Eonil
    Nov 20 at 9:36










  • We have done that... that does not seem to be the issue. it fixes itself and renders correctly after a lot of time.. but coming back to your question, have you tried layout methods in prepare of interface
    – Prajwal Udupa
    Nov 21 at 7:19
















0














Interface Builder cannot find intrinsicContentSize of a custom view.
For this given view code,



import Foundation
import UIKit

@IBDesignable
final class CustomView1: UIView {
override var intrinsicContentSize: CGSize {
return CGSize(width: 100, height: 100)
}
}


I put a UIView instance and set its class to CustomView1.
It works at first, but if I close and re-open the storyboard, IB sometimes(not always) shows an error.



enter image description here



IB cannot find width of the view.



enter image description here



And this error disappears if I force Update Frames.



enter image description here



It looks like a bug. Or am I missing something important? What's your opinion? Any workaround?










share|improve this question






















  • just curious, is it the same when you set the intrinsic content size in the storyboard? would that solve your problem? also during run time is the intrinsic content size factored in?
    – Prajwal Udupa
    Nov 20 at 9:00










  • @PrajwalUdupa I didn't and I won't try it because my goal is baking in intrinsic size into a class. If I have to set size for each instance manually, it's way out of intention.
    – Eonil
    Nov 20 at 9:20












  • I understand that... Hence the word curious.. :P But have you tried layout methods in prepare of interface builder? I am not sure if the override will be used before the actual layout... again.. really not sure.. We too are investigating ibdesignable issues.. for us, the view is in a different framework and XCode has issues rendering it in storyboard has throws a lot of errors till it is refreshed in storyboard
    – Prajwal Udupa
    Nov 20 at 9:30










  • @PrajwalUdupa If code is in different framework, you have to set module name to make IB to locate the code. Anyway, it has numerous errors and bug-like errors in that case, so I would not recommend to put storyboard in other than the main module.
    – Eonil
    Nov 20 at 9:36










  • We have done that... that does not seem to be the issue. it fixes itself and renders correctly after a lot of time.. but coming back to your question, have you tried layout methods in prepare of interface
    – Prajwal Udupa
    Nov 21 at 7:19














0












0








0


1





Interface Builder cannot find intrinsicContentSize of a custom view.
For this given view code,



import Foundation
import UIKit

@IBDesignable
final class CustomView1: UIView {
override var intrinsicContentSize: CGSize {
return CGSize(width: 100, height: 100)
}
}


I put a UIView instance and set its class to CustomView1.
It works at first, but if I close and re-open the storyboard, IB sometimes(not always) shows an error.



enter image description here



IB cannot find width of the view.



enter image description here



And this error disappears if I force Update Frames.



enter image description here



It looks like a bug. Or am I missing something important? What's your opinion? Any workaround?










share|improve this question













Interface Builder cannot find intrinsicContentSize of a custom view.
For this given view code,



import Foundation
import UIKit

@IBDesignable
final class CustomView1: UIView {
override var intrinsicContentSize: CGSize {
return CGSize(width: 100, height: 100)
}
}


I put a UIView instance and set its class to CustomView1.
It works at first, but if I close and re-open the storyboard, IB sometimes(not always) shows an error.



enter image description here



IB cannot find width of the view.



enter image description here



And this error disappears if I force Update Frames.



enter image description here



It looks like a bug. Or am I missing something important? What's your opinion? Any workaround?







ios uikit interface-builder






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 20 at 8:37









Eonil

39.3k58248444




39.3k58248444












  • just curious, is it the same when you set the intrinsic content size in the storyboard? would that solve your problem? also during run time is the intrinsic content size factored in?
    – Prajwal Udupa
    Nov 20 at 9:00










  • @PrajwalUdupa I didn't and I won't try it because my goal is baking in intrinsic size into a class. If I have to set size for each instance manually, it's way out of intention.
    – Eonil
    Nov 20 at 9:20












  • I understand that... Hence the word curious.. :P But have you tried layout methods in prepare of interface builder? I am not sure if the override will be used before the actual layout... again.. really not sure.. We too are investigating ibdesignable issues.. for us, the view is in a different framework and XCode has issues rendering it in storyboard has throws a lot of errors till it is refreshed in storyboard
    – Prajwal Udupa
    Nov 20 at 9:30










  • @PrajwalUdupa If code is in different framework, you have to set module name to make IB to locate the code. Anyway, it has numerous errors and bug-like errors in that case, so I would not recommend to put storyboard in other than the main module.
    – Eonil
    Nov 20 at 9:36










  • We have done that... that does not seem to be the issue. it fixes itself and renders correctly after a lot of time.. but coming back to your question, have you tried layout methods in prepare of interface
    – Prajwal Udupa
    Nov 21 at 7:19


















  • just curious, is it the same when you set the intrinsic content size in the storyboard? would that solve your problem? also during run time is the intrinsic content size factored in?
    – Prajwal Udupa
    Nov 20 at 9:00










  • @PrajwalUdupa I didn't and I won't try it because my goal is baking in intrinsic size into a class. If I have to set size for each instance manually, it's way out of intention.
    – Eonil
    Nov 20 at 9:20












  • I understand that... Hence the word curious.. :P But have you tried layout methods in prepare of interface builder? I am not sure if the override will be used before the actual layout... again.. really not sure.. We too are investigating ibdesignable issues.. for us, the view is in a different framework and XCode has issues rendering it in storyboard has throws a lot of errors till it is refreshed in storyboard
    – Prajwal Udupa
    Nov 20 at 9:30










  • @PrajwalUdupa If code is in different framework, you have to set module name to make IB to locate the code. Anyway, it has numerous errors and bug-like errors in that case, so I would not recommend to put storyboard in other than the main module.
    – Eonil
    Nov 20 at 9:36










  • We have done that... that does not seem to be the issue. it fixes itself and renders correctly after a lot of time.. but coming back to your question, have you tried layout methods in prepare of interface
    – Prajwal Udupa
    Nov 21 at 7:19
















just curious, is it the same when you set the intrinsic content size in the storyboard? would that solve your problem? also during run time is the intrinsic content size factored in?
– Prajwal Udupa
Nov 20 at 9:00




just curious, is it the same when you set the intrinsic content size in the storyboard? would that solve your problem? also during run time is the intrinsic content size factored in?
– Prajwal Udupa
Nov 20 at 9:00












@PrajwalUdupa I didn't and I won't try it because my goal is baking in intrinsic size into a class. If I have to set size for each instance manually, it's way out of intention.
– Eonil
Nov 20 at 9:20






@PrajwalUdupa I didn't and I won't try it because my goal is baking in intrinsic size into a class. If I have to set size for each instance manually, it's way out of intention.
– Eonil
Nov 20 at 9:20














I understand that... Hence the word curious.. :P But have you tried layout methods in prepare of interface builder? I am not sure if the override will be used before the actual layout... again.. really not sure.. We too are investigating ibdesignable issues.. for us, the view is in a different framework and XCode has issues rendering it in storyboard has throws a lot of errors till it is refreshed in storyboard
– Prajwal Udupa
Nov 20 at 9:30




I understand that... Hence the word curious.. :P But have you tried layout methods in prepare of interface builder? I am not sure if the override will be used before the actual layout... again.. really not sure.. We too are investigating ibdesignable issues.. for us, the view is in a different framework and XCode has issues rendering it in storyboard has throws a lot of errors till it is refreshed in storyboard
– Prajwal Udupa
Nov 20 at 9:30












@PrajwalUdupa If code is in different framework, you have to set module name to make IB to locate the code. Anyway, it has numerous errors and bug-like errors in that case, so I would not recommend to put storyboard in other than the main module.
– Eonil
Nov 20 at 9:36




@PrajwalUdupa If code is in different framework, you have to set module name to make IB to locate the code. Anyway, it has numerous errors and bug-like errors in that case, so I would not recommend to put storyboard in other than the main module.
– Eonil
Nov 20 at 9:36












We have done that... that does not seem to be the issue. it fixes itself and renders correctly after a lot of time.. but coming back to your question, have you tried layout methods in prepare of interface
– Prajwal Udupa
Nov 21 at 7:19




We have done that... that does not seem to be the issue. it fixes itself and renders correctly after a lot of time.. but coming back to your question, have you tried layout methods in prepare of interface
– Prajwal Udupa
Nov 21 at 7:19

















active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53389050%2finterface-builder-cannot-find-intrinsiccontentsize-defined-in-a-custom-view%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown






























active

oldest

votes













active

oldest

votes









active

oldest

votes






active

oldest

votes
















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.





Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


Please pay close attention to the following guidance:


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53389050%2finterface-builder-cannot-find-intrinsiccontentsize-defined-in-a-custom-view%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Costa Masnaga

Fotorealismo

Sidney Franklin