我正在尝试将广告放入我的应用中,但我无法管理设置布局文件。 布局文件如下
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
tools:context=".PhotoEffectMainActivity"
android:background="@drawable/mainbg" >
<!-- preview layout starts -->
<LinearLayout
android:id="@+id/previewlayout"
android:layout_height="wrap_content"
android:layout_width="fill_parent">
<ImageView android:id="@+id/previewbutton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:background="@drawable/preview"/>
</LinearLayout>
<!-- preview layout ends -->
<!-- effect layout starts -->
<LinearLayout
android:id="@+id/effectlayout"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_below="@id/previewlayout">
<!-- first layout-->
<LinearLayout
android:id="@+id/effectbutton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left" >
<ImageView
android:id="@+id/effect"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@drawable/ic_launcher" />
</LinearLayout>
<!-- first layout ends -->
<!-- second layout starts -->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:gravity="right"
>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:id="@+id/mygallery"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"
android:orientation="horizontal"
>
<ImageView
android:id="@+id/im1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im13"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
</HorizontalScrollView>
</LinearLayout>
<!-- second layout ends -->
</LinearLayout>
<!-- effect layout ends -->
<!-- view layout starts -->
<LinearLayout
android:id="@+id/viewlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/effectlayout">
<com.appbasic.imageeditor.MyView
android:id="@+id/drawView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
<!-- view layout ends -->
<!-- adlayout starts -->
<LinearLayout android:id="@+id/adlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/viewlayout" >
<FrameLayout android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/banner"
/>
</LinearLayout>
<!-- ad layout ends -->
</LinearLayout>
我也试图以编程方式提供尺寸。
LinearLayout.LayoutParams p4=new LinearLayout.LayoutParams(450*screenWidth/480, 40*screenHeight/800);
previewlayout.setLayoutParams(p4);
LinearLayout.LayoutParams p6=new LinearLayout.LayoutParams(460*screenWidth/480, 70*screenHeight/800);
effectlayout.setLayoutParams(p6);
LinearLayout.LayoutParams p3=new LinearLayout.LayoutParams(360*screenWidth/480, 70*screenHeight/800);
adlayout.setLayoutParams(p3);
LinearLayout.LayoutParams p5=new LinearLayout.LayoutParams(475*screenWidth/480, (screenHeight)-(previewlayout.getHeight()+effectlayout.getHeight()+adlayout.getHeight())*screenHeight/800);
viewlayout.setLayoutParams(p5);
请帮我解决这些问题。我两天都在苦苦挣扎。 提前谢谢。
答案 0 :(得分:0)
通过更改布局解决了这个问题。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
tools:context=".PhotoEffectMainActivity"
android:background="@drawable/mainbg" >
<!-- preview layout starts -->
<LinearLayout
android:id="@+id/previewlayout"
android:layout_height="wrap_content"
android:layout_width="fill_parent">
<ImageView android:id="@+id/previewbutton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:background="@drawable/preview"/>
</LinearLayout>
<!-- preview layout ends -->
<!-- effect layout starts -->
<LinearLayout
android:id="@+id/effectlayout"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_below="@id/previewlayout">
<!-- first layout-->
<LinearLayout
android:id="@+id/effectbutton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left" >
<ImageView
android:id="@+id/effect"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@drawable/ic_launcher" />
</LinearLayout>
<!-- first layout ends -->
<!-- second layout starts -->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:gravity="right"
>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:id="@+id/mygallery"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"
android:orientation="horizontal"
>
<ImageView
android:id="@+id/im1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/im13"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
</HorizontalScrollView>
</LinearLayout>
<!-- second layout ends -->
</LinearLayout>
<!-- effect layout ends -->
<!-- view layout starts -->
<LinearLayout
android:id="@+id/viewlayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/effectlayout">
<com.appbasic.imageeditor.MyView
android:id="@+id/drawView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
<!-- view layout ends -->
<!-- adlayout starts --
<FrameLayout android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/banner"
/>
<!-- ad layout ends -->
</RelativeLayout>