2012-04-09 3 views
9

둥근 모서리가있는 대화 상자처럼 보이는 액티비티를 만들어야합니다. 이 요구 사항에 대한둥근 대화 상자 테마 가져 오기

나는 나의 활동이 대화 상자처럼 보이지만, 나는 그것의 모퉁이를 둥글게 필요가 이제

android:theme="@android:style/Theme.Dialog" 

을 설정합니다.

그런 다음 속성이있는 xml을 만든 다음이 드로어 블을 내 활동 테마로 설정했지만 내 활동이 대화 상자처럼 보이지 않습니다.

내 활동이 둥근 모서리가있는 대화 상자처럼 보이도록 수행 할 수있는 방법을 제안하십시오.

답변

31

둥근 모서리가있는 theme을 만들 수 있습니다. 먼저는 Activity 배경에 대한 drawable가 필요합니다

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

    <corners android:radius="15dp" /> 

    <solid android:color="#565656" /> 

    <stroke 
     android:width="3dp" 
     android:color="#ffffff" /> 

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

</shape> 

다음이 부모에게 Theme.Dialog를 확장 자신 만의 테마를 만들어 :

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

    <style name="ThemeWithCorners" parent="android:Theme.Dialog"> 
     <item name="android:windowBackground">@drawable/another_test_drawable</item> 
    </style> 


</resources> 

이것은 res/values 폴더에 styles.xml라는 이름의 파일에있을 것입니다. 의 안드로이드 매니페스트에이 테마를 사용하여 Activity 당신이 원하는 : 당신의 도움에 대한

//... 
<activity 
      android:name=".ActivityName" 
      android:label="@string/app_name" 
      android:theme="@style/ThemeWithCorners" > 
//... 
+0

제발 내 사랑 내 대답은 아이스크림 샌드위치 alertdialog에 적용 할 수 있습니다,하지만 노력하지 않습니다 캔트 라운드 코너, 감사합니다 –

+0

좋은 대답 감사합니다 –

+0

팁을 테마를 사용 주셔서 감사. 드로어 블을 배경으로 설정해도 코너 비트가 투명하게 보이지 않습니다. –

0

첫째, 그래서 같은 둥근 모서리 모양 당김을 만듭니다

dialogbg.xml :

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

그런 다음 활동에 대한 레이아웃 XML 파일로 이동하고 안드로이드의 변경 : backgorund에 같은 속성 그래서

+2

Saarraz, 감사하지만 난 그 레이아웃의 형태가 아니라 실제 활동을 수정, 위의 솔루션을 시도했다. – brig

관련 문제