Déterminer la taille nécessaire pour une WebView
Hello,
Voici un petit problème sur lequel je cale (si si): j'aurais besoin de connaà®tre qu'une webview occuperait à l'écran pour afficher une page donnée, la largeur étant fixée.
J'ai cherché dans la doc. .
Voilà , si l'un d'entre vous a une idée, ce serait avec plaisir.
A+
Renaud
[EDIT]J'ai oublié de précisé que la WebView est créée par code, avec un classique alloc/initWithFrame.
Voici un petit problème sur lequel je cale (si si): j'aurais besoin de connaà®tre qu'une webview occuperait à l'écran pour afficher une page donnée, la largeur étant fixée.
J'ai cherché dans la doc. .
- Première conclusion c'est du côté de la WebFrameView que je dois chercher, la WebView n'étant qu'un container pour les WebFrameView. Cette classe implémente une méthode -documentView, mais cette méthode me revoie nil (la page a été chargée avec loadHTMLString:baseURL: de la classe WebFrame.
- j'ai essayé de descendre la hiérarchie des vue (avec des subviews), pour essayer de remonter à une NSScrollView, on finit par arriver à une WebCoreScrollView. Cette vue n'a pas de documentView (prévisible), et n'a pas de Scrollers non plus, nil étant renvoyé si j'envoie verticalScroller, alors qu'il est affiché à l'écran (et rien de tel dans les subviews évidemment), donc pas possible d'avoir la taille indirectement par ce biais.
Voilà , si l'un d'entre vous a une idée, ce serait avec plaisir.
A+
Renaud
[EDIT]J'ai oublié de précisé que la WebView est créée par code, avec un classique alloc/initWithFrame.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Comme c'est noyé dans mon code, je peux oublier un truc, tu me diras si ça marche
Pour lancer la requête sur l'adresse lUrl :
Dans les méthodes du delegate :
Dans la méthode loadingFinished :
Je pense que c'est la largeur "700" dans l'init de WebView que tu dois changer en fonction de tes besoins.
Voilà
Un grand merci en tout cas.
À+
Renaud
Il me semble qu'il ne faut pas oublier ça :
pour être sûr que c'est bien la totalité de la page qui est chargée. C'est con mais j'ai cherché longtemps :-\\
Sinon, pense à regarder la méthode du delegate qui est appelé en cas d'erreur sur la requête. Moi je retourne NSMakeSize(0, 0) dans ce cas et je teste les valeurs plus tard.
Voilà