У меня есть проблема, которую я `не удалось решить в последнее время ..Android: Размер экрана Поддержка 8 и 7-дюймовый экран
У меня есть сделать простое приложение для планшета, который я бегу в моем Samsung Galaxy Note 8.0 .. Я установил макет для размещения некоторого текстового вида в каком-либо месте. Я кодирую его в xml, используя dp для поля и sp для размера текста. Макет ширины и высоты устанавливается на wrapcontent. Но когда я запускаю его в своей подруге Samsung Galaxy Tab 2 7.0, макет не соответствует тому, что я вижу на своем устройстве. То же самое происходит, когда я пытаюсь запустить его в эмуляторе 10inch.
У меня есть использование макета-sw600dp для моей папки макета ..
Почему мой макет экрана, как это? Я хоть с помощью макета-sw600dp макет якобы настроить себя .. Или я не прав по поводу этого?
Я прочитал андроид документации по другому уровню поддержки и размеру экрана до сих пор я нашел с помощью макета sw600dp является хорошим решением ..
Я проверил на дюйм устройства с помощью:
Display display = getWindowManager().getDefaultDisplay();
DisplayMetrics outMetrics = new DisplayMetrics();
display.getMetrics(outMetrics);
float density = getResources().getDisplayMetrics().density;
float dpHeight = outMetrics.heightPixels/density;
float dpWidth = outMetrics.widthPixels/density;
Я прочитал несколько раз. Я понимаю, что мне нужно предоставить различную компоновку для разных размеров .. но мне действительно нужно предоставить разную компоновку для 7 и 8-дюймового экрана? В моем xml I используйте layout_margin с 100dp (пример). – iwalyfa
@iwalyfa - все имеет значение, проверьте dpi на устройстве, если они разные, тогда вам нужны разные папки макетов, проверьте соотношение пикселей, все имеет значение, когда дело доходит до макетов Android. –
Я отредактировал свой пост .. Я проверил идентификатор устройства. Мне нужен другой макет в моем случае? Когда я думаю об этом, это означает, что мне нужно предоставить много макетов для разных размеров экрана. – iwalyfa