我可以创建并显示一个自定义警报对话框,但即便如此,我android:layout_width/height="fill_parent"在对话框xml中它只有内容一样大.
我想要的是填充整个屏幕的对话框,除了20像素的填充.然后,作为对话框一部分的图像将使用fill_parent自动拉伸到完整的对话框大小.
我在我正在构建的应用程序中遇到此问题.请忽略所有设计缺点和缺乏最佳实践方法,这纯粹是为了展示我无法解决的一个例子.
我有DialogFragment一个AlertDialog使用自定义View设置返回基本AlertDialog.Builder.setView().如果这View有特定的大小要求,我如何Dialog正确调整自身大小以显示自定义中的所有内容View?
这是我一直使用的示例代码:
package com.test.test;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.DialogFragment;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Style;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.WindowManager;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import android.widget.Spinner;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); …Run Code Online (Sandbox Code Playgroud) java android android-layout android-alertdialog android-dialogfragment
我有以下布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/test_ll"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background"
android:orientation="vertical" >
<RelativeLayout
android:id="@+id/main_layPanelCircle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|center_horizontal"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="15dp"
android:background="@drawable/main_panel_a"
android:orientation="vertical"
android:padding="10dp" >
<ImageView
android:id="@+id/main_imgBreachAlert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp" />
<Button
android:id="@+id/main_btnMap"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:background="@null"
android:drawableTop="@drawable/icon_find"
android:text="@string/main_locate"
android:textColor="@android:color/white"
android:textSize="10sp" />
<LinearLayout
android:id="@+id/main_llPanelCycleMiddle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/main_btnMap"
android:layout_centerInParent="true"
android:orientation="horizontal" >
<Button
android:id="@+id/main_btnLeft"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@null"
android:drawableTop="@drawable/icon_call"
android:text="@string/main_call"
android:textColor="@android:color/white"
android:textSize="10sp"
android:visibility="visible" />
<Button
android:id="@+id/main_btnEmergency"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@null"
android:drawableTop="@drawable/icon_emergency"
android:scaleType="center"
android:text="@string/main_emergency"
android:textColor="@android:color/white"
android:textSize="9sp"
android:textStyle="bold" />
<Button
android:id="@+id/main_btnRight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@null"
android:drawableTop="@drawable/icon_store"
android:text="@string/main_store" …Run Code Online (Sandbox Code Playgroud)