Dimensions.get('screen').width renvoie une largeur de 320 pour mon iPad simulator.

Quel que soit le périphérique iPad que j'essaie d'utiliser dans le simulateur, il renvoie un écran de 320 x 480 et une résolution de fenêtre

.

Est-ce que je fais quelque chose de mal ici ou est-ce que cela ne fonctionne tout simplement pas correctement dans le simulateur?

1
Oliver84 11 août 2017 à 09:06

2 réponses

Meilleure réponse

Grâce à @Dani Akash, je pense avoir trouvé une solution qui fonctionnera pour ce que j'essaie de faire ici. React Native: Comment déterminer si l'appareil est un iPhone ou iPad

La suggestion était d'utiliser le rapport hauteur / largeur pour déterminer s'il s'agissait d'une tablette ou non.

import { Dimensions } from 'react-native';
const {height, width} = Dimensions.get('window'); 
const aspectRatio = height/width;

if(aspectRatio>1.6) {

   // Code for Iphone

}
else {

   // Code for Ipad

}
1
Oliver84 11 août 2017 à 16:27

Je sais que c'est après coup, mais vous pouvez également utiliser react-native-device-info, qui a une méthode isTablet (). Je ne sais pas quelle version de RN vous utilisez, mais Dimensions.get ('window') devrait fonctionner correctement, je pense que le problème est peut-être que vous utilisiez 'screen' au lieu de 'window'.

0
steffeydev 28 août 2017 à 20:07