2015-05-31 8 views
0

Я построил ARSimple демо из ARToolkit для Android, но это результат:Получить ARToolkit демо на Android, чтобы заполнить весь экран

The view does not fill the screen

Есть ли способ, чтобы сделать вид на весь экран ?

+0

Настройка фиксированного размера в 'LayoutParams' для' glView' и 'preview' в' ARActivity: onResume', похоже, работает, например. 'mainLayout.addView (предварительный просмотр, новые LayoutParams (1440,1080));', но я не знаю, почему значение по умолчанию ('fill_parent') не заполняет экран. – Alicia

ответ

0

Модифицировать метод onResume() в ARActivity.java сделал трюк без растяжения изображения.

Log.i(TAG, "GLSurfaceView created"); 

Point windowSize = new Point(); 
getWindowManager().getDefaultDisplay().getSize(windowSize); 

// Assumes landscape orientation 
float aspectRatio = 4.0f/3.f; 
int height = windowSize.y; 
int width = Math.round(height * aspectRatio); 

if (width > windowSize.x) { 
    // For portrait screens instead... 
    width = windowSize.x; 
    height = Math.round(width * aspectRatio); 
} 

// Add the views to the interface 
mainLayout.addView(preview, new LayoutParams(width, height)); 
mainLayout.addView(glView, new LayoutParams(width, height)); 

Log.i(TAG, "Views added to main layout."); 

enter image description here

0

Измените файл main.xml и изменить ширину и высоту FrameLayout атрибуты "match_parent"

<?xml version="1.0" encoding="utf-8"?> 


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/topLayout" 
    android:orientation="horizontal" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 


<FrameLayout 
    android:id="@+id/mainLayout" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    > 


</FrameLayout > 

</LinearLayout> 
1

Я решил эту проблему путем изменения единиц в main.xml файл с px на dp.

i.e.from:

<FrameLayout 
android:id="@+id/mainLayout" 
android:orientation="vertical" 
android:layout_width="640px" 
android:layout_height="480px" 
> 
</FrameLayout> 

To:

<FrameLayout 
android:id="@+id/mainLayout" 
android:orientation="vertical" 
android:layout_width="640dp" 
android:layout_height="480dp" 
> 
</FrameLayout>  

Установка для match_parents не помогает, вид камеры заполняет весь экран, но экран выглядит непропорциональной.

Смежные вопросы