В моем приложении я использую много диалогов (всплывающих окон), и я хочу дать им округлую форму угла.Как изменить форму диалога?
Как я создать эти всплывающие окна, это:
на Java кода создать такую функцию:
private void showpopup(){
dialog = new Dialog(this);
dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(getLayoutInflater().inflate(R.layout.popup, null));
dialog.setCancelable(false);
TextView fin = (TextView) dialog.findViewById(R.id.solu);
fin.setText("¡¡safsfasfsafs!!");
fin.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
dialog.dismiss();
}
});
dialog.show();
}
Компоновка я называю там создается следующим образом:
<?xml version="1.0" encoding="utf-8" ?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
>
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/shape"
android:orientation="vertical"
android:padding="10dp"
>
<TextView
android:id="@+id/solu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="25sp"
android:padding="10dp"
android:textAppearance="?android:attr/textAppearanceLarge" />
</LinearLayout>
</LinearLayout>
и, наконец, xml «форма», которую я вызываю в фоновом режиме, это:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<corners android:radius="20dp"/>
<stroke
android:width="1dp"
android:color="@color/black"/>
</shape>
В результате это что-то вроде этого:
Как вы можете видеть, я не достичь того, чего я хочу ...
Возможно, вы захотите установить фон фона вместо фона макета. –
Я изменил андроид: background = "@ drawable/shape" для android: windowbackground = "@ drawable/shape", ошибка в коде, не разрешена: S: ошибка: идентификатор ресурса не найден для атрибута 'windowbackground' в пакете 'android' –
Это не то, как один из них меняет фон окна. Если вы хотите сделать это из XML, вам нужно определить тему. В противном случае просто 'getWindow(). SetBackgroundX()' –