gpt4 book ai didi

android - 无论我尝试什么,AlertDialog 都不会包装内容

转载 作者:行者123 更新时间:2023-11-29 19:12:44 25 4
gpt4 key购买 nike

这是我的对话框的 xml 文件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/main"
android:paddingTop="23dp"
android:background="@android:color/white">

<ImageView
android:id="@+id/officer"
android:layout_width="47dp"
android:layout_height="47dp"
android:layout_marginLeft="24dp"
android:background="@drawable/officerman"/>
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Are you sure you want\nto sign out?"
android:textSize="15.5dp"
android:textColor="#1C86FF"
android:layout_marginTop="4dp"
android:lineSpacingExtra="2dp"
android:layout_marginLeft="84dp"/>

<LinearLayout
android:layout_marginTop="20dp"
android:layout_width="264dp"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="1"
android:layout_below="@id/officer">

<Button
android:id="@+id/yes"
android:layout_width="wrap_content"
android:layout_weight="0.5"
android:layout_height="42dp"
android:background="#1C86FF"
android:text="Yes"
android:textAllCaps="false"
android:textSize="15dp"
android:textColor="@android:color/white"/>

<Button
android:id="@+id/no"
android:layout_width="wrap_content"
android:layout_weight="0.5"
android:layout_height="42dp"
android:background="#0078FF"
android:textSize="15dp"
android:textColor="@android:color/white"
android:textAllCaps="false"
android:text="No"/>

</LinearLayout>

</RelativeLayout>

这是我的java代码

    AlertDialog.Builder build = new AlertDialog.Builder(Login.this);
View lview = getLayoutInflater().inflate(R.layout.dialog_leave,null);
build.setView(lview);
AlertDialog dialog = build.create();
dialog.show();

无论我尝试什么,alertdialog 大小都没有包含我的内容。它结束了这样。它在右侧添加扩展空间以使其达到一定大小。

Click on this to see the image. It adds extended space to the right see to get it to the default alertdialog size

我尝试过以像素为单位使用 getWindow.setLayout(width,height),但这太麻烦了,必须有更好的方法来实现它。

我也尝试了 getWindow.setLayout(Relative.LayoutParams.WRAP_CONTENT, ...),同样的事情仍然发生。

我也尝试过使用 popupwindow。这个问题的简单解决方法是什么?

最佳答案

以上都没有为我包装内容。这是对我有用的。

我在 styles.xml 中添加了这个样式

<style name="WrapContentDialog" parent="Theme.AppCompat.Light.Dialog">
<item name="windowMinWidthMajor">0%</item>
<item name="windowMinWidthMinor">0%</item>
</style>

然后我将它设置为这样的对话框。

AlertDialog.Builder builder = new AlertDialog.Builder(getContext(), R.style.WrapContentDialog);

希望它对你也有用。

关于android - 无论我尝试什么,AlertDialog 都不会包装内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44717815/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com