2016-03-24 5 views
7

У меня есть FrameLayout внутри моего корневого представления (linear: vertical), которое я использую для хранения разных фрагментов в зависимости от ввода пользователем. FrameLayout меньше фона, поэтому он выглядит «плавающим».FrameLayout с закругленными углами

Как объединить углы FrameLayout?

Фрагеты, которые входят в FrameLayout, не являются изображениями, поэтому я не могу их обрезать.

+0

Не можете ли вы просто бросить в ручную вытяжку в качестве фона вашего FrameLayout? – m02ph3u5

+0

Проверьте это http://www.gadgetsaint.com/tips/rounded-corners-views-layouts-android/#.WPz2QVN97BI – ASP

ответ

11

Создайте xml-файл, например. your_rounded_shape.xml в вашей вытяжке папки и добавьте следующий код:

<?xml version="1.0" encoding="UTF-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <solid android:color="#CCCCCC"/>  

    <stroke android:width="2dp" 
     android:color="#999999"/> 

    <padding android:left="2dp" 
     android:top="2dp" 
     android:right="2dp" 
     android:bottom="2dp"/> 

    <corners android:bottomRightRadius="8dp" 
     android:bottomLeftRadius="8dp" 
     android:topLeftRadius="8dp" 
     android:topRightRadius="8dp"/> 
</shape> 

Затем используйте your_rounded_shape.xml в качестве фона в вашем FrameLayout. Что-то вроде этого:

<FrameLayout 
    android:width="match_parent" 
    android:height="wrap_content" 
    android:background="your_rounded_shape"/> 
+0

Это прекрасно! Спасибо, это именно то, что я искал. –

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