2012-03-28 18 views
1

私のアプリケーションのダイアログのカスタムダイアログシェイプを作成しようとしています。私はこのトピックを何時間も探してきましたが、私が見つけた解決策は私にとってはうまくいきませんでした。だから私自身の問題を尋ねます。 角を丸めてタイトルを表示し、次にテキストを含むScrollViewを表示するダイアログが必要です。僕にはうまくいかないのは丸い角です。私は丸いコーナーダイアログで欲しい活性を持つ丸い角を作成できませんダイアログ(Android-Eclipse)

私のAndroidManifest.xml: は、ここで私はあなたに私のコードを投稿

<activity 
     android:name=".AboutNacimiento" 
     android:label="@string/about_nac_title" 
     android:theme="@style/Theme.CustomDialogTheme" 
     android:screenOrientation="nosensor"> 
    </activity> 

その後、それぞれのスタイル(と私のリソースのres /レイアウト/値/ dialogTheme。 XML)

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

<style name="Theme.CustomDialogTheme" 
    parent="@android:style/Theme.Dialog"> 
    <item name="android:windowTitleStyle">@style/dialog_title_style</item> 
    <item name="android:background">@drawable/rounded_dialog</item>  

</style> 

<style name="dialog_title_style" parent="@android:Widget.TextView"> 
    <item name="android:background">@color/titulo_color</item> 
    <item name="android:padding">10dip</item> 
    <item name="android:textSize">20sp</item> 
    <item name="android:gravity">center</item> 
    <item name="android:textStyle">bold</item> 
    <item name="android:textColor">@color/texto_blanco</item> 
</style>  

、最終的には私の丸みを帯びたダイアログの私が欲しい形状(RES /描画可能/ rounded_dialog.xml):

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

android:shape="rectangle" > 
<solid android:color="@color/background_color"/> 
<stroke android:color="#7F7F7F" android:width="1dp" /> 
<corners 
    android:radius="20dp"/> 
</shape> 

が、私は取得しています唯一の「四捨五入」の事は... TextViewsに

http://imageshack.us/photo/my-images/515/problemab.jpg

いくつかの境界線ですあなたは私の希望ダイアログを得るために私を助けてくださいだろうか?

答えて

8

デフォルトのAndroidのフレームを削除するには重要なことである:ここでは

MyDialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); 

は完全な例である:

Dialog MyDialog= new Dialog(MyActivity.this); 
MyDialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 
MyDialog.setContentView(R.layout.my_custom_dialog); 
MyDialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); 
MyDialog.show(); 
+1

私はICSでのダイアログのフレームを変更する方法を探して再生することができなかったされていますテーマで。そして、setBackgroundDrawable()がその解決策です。ありがとう。 – Tomcat

関連する問題