自定义AlertDialog显示问题

时间:2014-04-12 19:48:29

标签: android

我为自己的应用创建了自定义对话框。当你单击按钮退出时。它会提示你一个警报对话。基于Android Developers website上的教程。我创建了自己的自定义alertdialog。只是想问为什么我的对话看起来很糟糕。比如this ..是的,没有确认按钮现在显示我对它的期望与开发人员website中的那个一样。因为你可以看到按钮标志和取消看起来很棒。

这是我的代码

exit.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {

                AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); 
                LayoutInflater inflater = MainActivity.this.getLayoutInflater(); 
                builder.setView(inflater.inflate(R.layout.confirmation_game_restart, null)) 
                       .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                           @Override
                           public void onClick(DialogInterface dialog, int id) {
                              //exit
                           }
                       })
                       .setNegativeButton("No", new DialogInterface.OnClickListener() {
                           public void onClick(DialogInterface dialog, int id) {
                                dialog.cancel();
                           }
                       });      
               builder.create().show(); 


            }
        });

自定义对话框

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="#FFFFBB33"
        android:padding="5dp"
        android:scaleType="center"
        android:text="Exitting?"
        android:textColor="#ffffff"
        android:textSize="20sp" />

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="80dp"
        android:background="#ffffff"
        android:padding="10dp"
        android:scaleType="center"
        android:text="Are you sure you want to exit?"
        android:textSize="15sp" />

</LinearLayout>

1 个答案:

答案 0 :(得分:0)

那个d.android.com页面上的对话框使用了Holo主题。 您可以为您的应用程序设置它,但注意Android版本,它将用于:从4.x + android(API&gt; = 14)实现holo

要设置主题,您可以在AndroidManifest.xml中的标记中设置此属性: android:theme="@android:style/Theme.Holo.NoActionBar" 或者(因为IDE喜欢在项目创建期间预先设置): android:theme="@style/AppTheme"然后在styles.xml文件中:

<!-- Base application theme. -->
<style name="AppTheme" parent="android:Theme.Holo.NoActionBar">
    <!-- Customize your theme here. -->
</style>

例如,如果您的minSdk版本为14或更高版本,这是一种简单的方法。否则,这仍然会看起来很糟糕&#34;在旧设备上。