我有一个DialogFragment类,其代码如下:
public class LeavingAppDialog extends DialogFragment {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
LayoutInflater inflater = getActivity().getLayoutInflater();
View v = inflater.inflate(R.layout.leaving_app_dialog, null);
builder.setView(v);
Typeface segoeuib = Typeface.createFromAsset(getActivity().getApplicationContext().getAssets(), "fonts/segoeuib.ttf");
TextView text = (TextView) v.findViewById(R.id.msg_dialog);
text.setTypeface(segoeuib);
Dialog dialog = builder.create();
return dialog;
}
}
此对话框使用自定义布局,此处为其代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#00000000">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true">
<ImageView
android:layout_width="300dp"
android:layout_height="300dp"
android:id="@+id/imageView"
android:src="@drawable/box_1_fit"
android:scaleType="centerInside"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:background="#00000000" />
<FrameLayout
android:layout_width="275dp"
android:layout_height="150dp"
android:id="@+id/frameLayout"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="LEAVING THIS APP?"
android:id="@+id/msg_dialog"
android:textSize="35dp"
android:layout_gravity="center_horizontal|top"
android:gravity="center_horizontal|top"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp" />
</FrameLayout>
<Button
android:layout_width="100dp"
android:layout_height="37dp"
android:id="@+id/btn_cancel"
android:background="@drawable/cancel_button_fit"
android:singleLine="false"
android:layout_alignRight="@+id/frameLayout"
android:layout_alignEnd="@+id/frameLayout"
android:layout_marginTop="75dp"
android:layout_below="@+id/frameLayout"
android:layout_marginRight="25dp"
android:onClick="ExitApp"/>
<Button
android:layout_width="100dp"
android:layout_height="37dp"
android:id="@+id/btn_accept"
android:background="@drawable/accept_button_fit"
android:layout_below="@+id/frameLayout"
android:layout_alignLeft="@+id/frameLayout"
android:layout_alignStart="@+id/frameLayout"
android:layout_marginTop="75dp"
android:layout_marginLeft="25dp"
android:onClick="ExitApp"/>
</RelativeLayout>
</RelativeLayout>
问题出在屏幕截图上。我需要摆脱这些白色边框。我试图通过布局编辑器和代码将背景颜色设置为透明。我试图为所有布局和图像本身设置透明背景颜色,但这一切都没有效果。我的源图像是一个png文件,它确实具有透明背景,因此问题不在源图像中。
答案 0 :(得分:0)
设置背景透明:
像这样:mDialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
答案 1 :(得分:0)
尝试此自定义提醒对话框类:
class CustomAlertDialog extends AlertDialog {
CustomAlertDialog(Context context) {
super(context);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
setContentView(R.layout.view_custom_alert_dialog);
RMTextView txtTitle = (RMTextView) findViewById(R.id.txt_alert_title);
txtTitle.setText("Title");
}
}
答案 2 :(得分:0)
尝试这种方式。
if ($this->request->is('post')) {
$this->ModelName->id = 2;
$this->ModelName->save($this->request->data);
}