как удалить прямоугольник из пользовательского диалога - PullRequest
5 голосов
/ 21 сентября 2011

я настраиваю диалоговое окно:

public class CustomizeDialog extends Dialog implements OnClickListener {
Button close;
TextView tv;
public CustomizeDialog(Context context,String Stringcontent) {
    super(context);
    requestWindowFeature(Window.FEATURE_NO_TITLE);      
    setContentView(R.layout.custom_diolog_main);
    tv=(TextView) findViewById(R.id.content);
    tv.setText(Stringcontent);
    close = (Button) findViewById(R.id.close);
    close.setOnClickListener(this);
}

@Override
public void onClick(View v) {       
    if (v == close)
        dismiss();
}

 }

xml - это

   <?xml version="1.0" encoding="utf-8"?>
  <RelativeLayout  
   xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_height="100dip" 
android:orientation="vertical"
android:background="@drawable/custom_diolog_bg"
android:layout_width="250dip">
<TextView android:layout_height="wrap_content"
    android:textColor="#000" 
    android:textStyle="bold" 
    android:textSize="18sp"
    android:id="@+id/content"
    android:layout_marginLeft="15dip"
    android:layout_marginTop="5dip"
    android:layout_alignParentTop="true"
    android:layout_width="250dip" 
    android:text=" Custom Dialog "/>


<Button android:layout_width="70dip"  
    android:layout_marginLeft="80dip"
    android:background="@drawable/custom_dialog_button_bg"
    android:layout_alignParentBottom="true"
    android:layout_height="40dip" android:text="关闭"   
        android:id="@+id/close"></Button>
 </RelativeLayout>

мой диалог очень хорош, но custom_diolog_bg - это прямоугольник с закругленными углами, и когда я показываю свой диалог,он показывает системный фрейм, кроме моего обычая, поэтому я использовал this.getwindow.setBackgroundDrawable (null), затем системный фрейм, кажется, удалил, но не удаляют только четыре угла, мы также видим темные четыре угла, потому что я использовал изображение прямоугольника со скругленными угламиТак что мой вопрос, как удалить все фреймы, чтобы мой диалог выглядел очень хорошо

картинка http://i.stack.imgur.com/EG7oz.jpg, так что вы можете видеть, что в последнем есть темная рамка, как ее удалить?спасибо

Ответы [ 5 ]

19 голосов
/ 29 марта 2012

Решение, которое сработало для меня

<style name="DialogTheme" parent="@android:style/Theme.Dialog">
        <item name="android:windowBackground">@android:color/transparent</item>        
</style>

Dialog dialog = new Dialog(this, R.style.DialogTheme);
5 голосов
/ 16 мая 2015

Используйте следующие строки перед вызовом setContentView(): -

getWindow().requestFeature(Window.FEATURE_NO_TITLE);
getWindow().setBackgroundDrawable(
            new ColorDrawable(android.graphics.Color.TRANSPARENT));

будет отлично работать.

2 голосов
/ 21 сентября 2011

Dialog mydialog = новый диалог (это, android.R.style.Theme_Translucent_NoTitleBar);

1 голос
/ 14 марта 2013

Попробуйте, это сработало для меня как шарм.

ContextThemeWrapper wrapper = new ContextThemeWrapper(this, android.R.style.Theme_Holo);
final LayoutInflater inflater = (LayoutInflater) wrapper.getSystemService(LAYOUT_INFLATER_SERVICE);
AlertDialog.Builder builder = new AlertDialog.Builder(wrapper);
1 голос
/ 21 сентября 2011

вместо звонка

super(context);

вызов

super(context, android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);

Обновление: Используйте этот макет XML вместо

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="100dip"
    android:orientation="vertical"
    android:background="@drawable/custom_diolog_bg"
    android:layout_width="250dip">
    <LinearLayout
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:orientation="vertical"
        android:layout_centerInParent="true">
        <TextView
        android:layout_height="wrap_content"
        android:textColor="#000"
        android:textStyle="bold"
        android:textSize="18sp"
        android:id="@+id/content"
        android:layout_marginLeft="15dip"
        android:layout_marginTop="5dip"
        android:layout_alignParentTop="true"
        android:layout_width="250dip"
        android:text=" Custom Dialog " />
    <Button
        android:layout_width="70dip"
        android:layout_marginLeft="80dip"
        android:background="@drawable/custom_dialog_button_bg"
        android:layout_alignParentBottom="true"
        android:layout_height="40dip"
        android:text="关闭"
        android:id="@+id/close"></Button>
    </LinearLayout>
</RelativeLayout>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...