Support custom scale property for dynamically downloaded tab/toolbar icons
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 30/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- objective-c, react-native
- Ambito
- mobile
Direzione di ricerca
Inizia dal punto di ingresso di ImageParser ed esamina la PR #8329, che l’issue identifica come quella che aggiunge questo supporto. Verifica il comportamento di ridimensionamento opzionale per le sorgenti di immagini URI e che le sorgenti esistenti mantengano il comportamento attuale; il lavoro è completato quando il dimensionamento richiesto dell’icona funziona senza regressioni.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
When using dynamically downloaded images (e.g. user avatars fetched from a CDN) as tab-bar or toolbar icons, there is no way to specify the image scale factor. ImageParser delegates to [RCTConvert UIImage:], which defaults to scale = 1.0 for URI-based images. This causes icons to render at their full pixel size on Retina displays instead of the intended logical size.
The standard @2x/@3x filename suffix convention does not apply here because images are downloaded to the cache directory at runtime with arbitrary filenames.
Steps to reproduce
- Download an image to the local filesystem (e.g. a 60×60 px avatar for a 20pt tab icon on a 3x device)
- Pass it as a bottom tab icon:
{ uri: 'file:///path/to/avatar.png' } - Observe the icon renders at 60×60 points instead of 20×20 points
Expected behavior
Callers should be able to pass an optional scale property in the image source dictionary:
icon: { uri: 'file:///path/to/avatar.png', scale: 3 }
ImageParser would then re-create the UIImage at the requested scale using [UIImage imageWithCGImage:scale:orientation:], so the icon renders at the correct logical size.
Proposed fix
PR #8329 adds this support in a backwards-compatible way — the scale key is only read when explicitly provided.
Environment
- react-native-navigation: 8.8.8
- React Native: 0.85.3
- Platform: iOS
- Lingua principale
- MDX
- Stelle
- 13.2k
- Fork
- 2.6k
- Merge medio
- 2g 10h
- PR unite (30g)
- 6
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di wix/react-native-navigation
-
needs triage triage: documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
wix/react-native-navigation#8343 · 1 commento ·
-
[Fix] searchBar `focus:` true ignored on mergeOptions when searchController already existsForse già presa @IsaacIsrael l’ha presa 158 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
wix/react-native-navigation#8318 ·
-
Build Failed with RN 0.87Apertaneeds triage type: accepted/bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
wix/react-native-navigation#8365 · 2 commenti ·
-
`showOverlay` creates a scene-less `UIWindow`, so overlays never appear under UIScene lifecycleForse già presa @yedidyak l’ha presa 4 giorni fa. Apertaplatform: iOS type: accepted/bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
wix/react-native-navigation#8345 · 2 commenti · 2 reazioni ·
-
platform: iOS type: accepted/bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
wix/react-native-navigation#8340 ·
Tutte le issue di wix/react-native-navigation
Issue simili
-
Keyboard crashes Chrome tabsAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
Julow/Unexpected-Keyboard#1490 ·
I maintainer di solito rispondono entro 4 giorni
-
unconfirmed
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
thunderbird/thunderbird-android#11893 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
linkwarden/linkwarden#1891 ·
I maintainer di solito rispondono entro 1 giorno
-
Type: Possible bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
AntennaPod/AntennaPod#8887 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
work/tech-debt
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
bcgov/bc-wallet-mobile#5035 ·
I maintainer di solito rispondono entro 2 giorni