Как мне получить максимальную ширину и высоту устройства в Android
Вопрос
Привет, у меня возникла проблема с созданием пользовательского представления для приложения Android.Мой пользовательский вид хочет использовать, если разрешена максимальная ширина экрана.Я не смог найти никакого способа получить это значение.
Кто-нибудь может указать мне на правильный метод?
Решение
Попробуй
mWinMgr = (WindowManager)context.getSystemService(Context.WINDOW_SERVICE);
int displayWidth = mWinMgr.getDefaultDisplay().getWidth();
где контекст находится Context
пример.
По умолчанию используется FrameLayout
, в котором сохранен ваш макет, заполняет весь экран по горизонтали (по вертикали у вас может быть строка состояния).Таким образом, вы можете установить максимально возможную ширину, используя android:layout_width="fill_parent"
правильно.
Другие советы
Вот хороший ответ :
mWinMgr.getDefaultDisplay (). getWidth ();
// методы getWidth () и getHeight () устарели
Вы можете получить ширину и высоту следующим образом: оригинал
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;
DisplayMetrics size = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(size );
int w = size .widthPixels;
int h = size .heightPixels;
WindowManager window = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics dm = new DisplayMetrics();
window.getDefaultDisplay().getMetrics(dm);
devicewidth = (dm.widthPixels);