Android закругленные углы макет ошибка


Я пытаюсь создать не полноэкранную активность с прозрачностью вокруг нее и использую этот макет XML:

<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
    android:id="@+id/containerPageContainer">


    <FrameLayout
        android:id="@+id/informationContainer"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center" >

        <LinearLayout
            android:id="@+id/myContainer"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_gravity="center_horizontal"
            android:background="@drawable/rounder_corners"
            android:orientation="vertical"
            android:padding="10dp" >

        </LinearLayout>

    </FrameLayout>

</merge>  

И для скругленных углов:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" android:padding="10dp">

    <solid android:color="#FFFFFFFF" />
    <corners android:radius="10dp" />

</shape>
Но получили этот результат с дефектами по углам, нижней и верхней сторонам:

Введите описание изображения здесь

Помогите мне исправить это, пожалуйста.

2 4

2 ответа:

Я нашел решение:

1) Создайте тему XML в res/values/:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
  <style name="Theme.Transparent" parent="android:Theme">
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:backgroundDimEnabled">false</item>
  </style>
</resources>

2) стиль закругленных углов drawable/rounded_corners.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" android:padding="10dp">

    <solid android:color="#FFFFFFFF" />
    <corners android:radius="10dp" />

</shape>

3) Activity XML:

<?xml version="1.0" encoding="utf-8"?>
<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">

    <RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/qrCodeContainer"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="center_horizontal"
        android:background="@drawable/rounder_corners"
        android:orientation="vertical"
        android:padding="15dp"
        android:layout_margin="6dp" >

    </RelativeLayout>

</RelativeLayout>

4) опишите Activity в XML манифеста проекта:

<activity
    android:name=".view.ViewCodeActivity"
    android:label="@string/app_name"
    android:theme="@style/Theme.Transparent">

</activity>

Покрытие тематического представления AlertDialog формой не является хорошей идеей, как вы видите.
Вот вы и пришли tutorial:
http://darshangr.wordpress.com/2011/06/23/creating-a-transparent-view-in-android-login-screen-example/

Естественно, вам нужно будет изменить его. Вместо белого backgroud установите свою форму с закругленными углами.