Where does the CAShapeLayer do its drawing?
When a path is set, draw(in: ctx) still isn't called despite having output. I originally went down the path of subclassing CAShapeLayer but now I'm just confused how CALayer works.
ios
add a comment |
When a path is set, draw(in: ctx) still isn't called despite having output. I originally went down the path of subclassing CAShapeLayer but now I'm just confused how CALayer works.
ios
Calayer.setNeedDisplay to call the draw function after initial drawing.
– E.Coms
Jan 2 at 15:55
No, the issue is that the path is drawn -- without a call to draw(in: ctx). I'm just trying to figure where the drawing for a CAShapeLayer occurs. Is it done through some private magic?
– chrisp
Jan 2 at 22:19
It’s probably cashapelayer override func display() with the content updating like path.
– E.Coms
Jan 3 at 15:51
add a comment |
When a path is set, draw(in: ctx) still isn't called despite having output. I originally went down the path of subclassing CAShapeLayer but now I'm just confused how CALayer works.
ios
When a path is set, draw(in: ctx) still isn't called despite having output. I originally went down the path of subclassing CAShapeLayer but now I'm just confused how CALayer works.
ios
ios
edited Jan 2 at 12:38
chrisp
asked Jan 2 at 11:40
chrispchrisp
87211631
87211631
Calayer.setNeedDisplay to call the draw function after initial drawing.
– E.Coms
Jan 2 at 15:55
No, the issue is that the path is drawn -- without a call to draw(in: ctx). I'm just trying to figure where the drawing for a CAShapeLayer occurs. Is it done through some private magic?
– chrisp
Jan 2 at 22:19
It’s probably cashapelayer override func display() with the content updating like path.
– E.Coms
Jan 3 at 15:51
add a comment |
Calayer.setNeedDisplay to call the draw function after initial drawing.
– E.Coms
Jan 2 at 15:55
No, the issue is that the path is drawn -- without a call to draw(in: ctx). I'm just trying to figure where the drawing for a CAShapeLayer occurs. Is it done through some private magic?
– chrisp
Jan 2 at 22:19
It’s probably cashapelayer override func display() with the content updating like path.
– E.Coms
Jan 3 at 15:51
Calayer.setNeedDisplay to call the draw function after initial drawing.
– E.Coms
Jan 2 at 15:55
Calayer.setNeedDisplay to call the draw function after initial drawing.
– E.Coms
Jan 2 at 15:55
No, the issue is that the path is drawn -- without a call to draw(in: ctx). I'm just trying to figure where the drawing for a CAShapeLayer occurs. Is it done through some private magic?
– chrisp
Jan 2 at 22:19
No, the issue is that the path is drawn -- without a call to draw(in: ctx). I'm just trying to figure where the drawing for a CAShapeLayer occurs. Is it done through some private magic?
– chrisp
Jan 2 at 22:19
It’s probably cashapelayer override func display() with the content updating like path.
– E.Coms
Jan 3 at 15:51
It’s probably cashapelayer override func display() with the content updating like path.
– E.Coms
Jan 3 at 15:51
add a comment |
0
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
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54005681%2fwhere-does-the-cashapelayer-do-its-drawing%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54005681%2fwhere-does-the-cashapelayer-do-its-drawing%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
Calayer.setNeedDisplay to call the draw function after initial drawing.
– E.Coms
Jan 2 at 15:55
No, the issue is that the path is drawn -- without a call to draw(in: ctx). I'm just trying to figure where the drawing for a CAShapeLayer occurs. Is it done through some private magic?
– chrisp
Jan 2 at 22:19
It’s probably cashapelayer override func display() with the content updating like path.
– E.Coms
Jan 3 at 15:51